PHP - Form Option To Set Cookie , Help!!!
Hello again everyone,
I am new to PHP. This is the second part of a question: Question: In the program you created in question 4, allow your user the option of saving the information for the next time they visit. If they choose "yes", save information in a cookie. At the bottom of question5.php I added a checkbox to save the information. I then created an if statement on the processing page (question5display.php. I would appreciate some help, thanks guys. Here is the form ( called it question5.php): <html> <head> <title> Please Enter Your Text</title> </head> <body> <form method="post" action="question5display.php"> <p>Enter the text you want formatted please: <input type="text" name="textformat" maxlength="30" size="30" /> <table> <tr> <td><label for="font">Select Font:</label></td> <td><select id="font" name="font"> <option value="Verdana">Verdana</option> <option value="Arial">Arial</option> <option value="Times New Roman">Times New Roman</option> </select> </td> </tr> <tr> <td><label for ="size">Select Size:</label></td> <td><select id="size" name="size"> <option value="10px">10px</option> <option value="12px">12px</option> <option value="14px">14px</option> <option value="20px">20px</option> </select> </td> </tr> <tr> <td><label for="color">Select Color:</label></td> <td><select id="color" name="color"> <option value="green">Green</option> <option value="blue">Blue</option> <option value="red">Red</option> </select> </td> </tr> </table> <input type="checkbox" id="save_prefs" name="save_prefs" /> <label for="save_prefs">Save these preferences for the next time you log in.</label> <input type="submit" name="submit" value="Submit" /> </form> </body> </html> Here is the page it goes to (called it question5display): <?php if (isset($_POST['save_prefs'])) { setcookie('font', $_POST['font'], time() + 60); setcookie('size', $_POST['size'], time() + 60); setcookie('color', $_POST['color'], time() + 60); $_COOKIE['font'] = $_SESSION['font']; $_COOKIE['size'] = $_SESSION['size']; $_COOKIE['color'] = $_SESSION['color']; } session_start(); $_SESSION['textformat'] = $_POST['textformat']; $_SESSION['font'] = $_POST['font']; $_SESSION['size'] = $_POST['size']; $_SESSION['color'] = $_POST['color']; ?> <html> <head> </head> <body> <p <?php echo ' style="font-family: ' . $_SESSION['font'] . '; '; echo 'font-size: ' . $_SESSION['size'] . '; '; echo 'color: ' . $_SESSION['color'] . ';" '; ?>> <?php echo $_SESSION['textformat']; ?> </p> </body> </html> Similar TutorialsThis topic has been moved to JavaScript Help. http://www.phpfreaks.com/forums/index.php?topic=307346.0 I got a weird problem; I got a form whit 2 fields and a submit button; When i click the submit button a jquery ajax script create a cookie named form; My problem is the form isn't disappearing when i click the submit(javascript is set to reload location) button even when i try to delete the cookie from the browser; on index: Code: [Select] function addcomment($pass , $pst)//add comment and call form { $cpageid = $pass; $comment = new Comment; $comment->storeFormValues($pst); $comment->insertc(); require('comment.php'); } on the page where the form is called: Code: [Select] <div id="commentbox" class="container_24"> <?php if(!isset($_POST['form'])) { addcomment($result['article']->id,$_POST);//addcoment on the page whit the current id } ?> </div> Hi everyone, I have a form which is repopulated with cookies of user entries following an unsuccessful submit. It works on all fields except the textarea which is just blank. Can anybody suggest why this isn't working? Here is the form page code: Code: [Select] <!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd"> <?php include("functions.php"); getcompanyname(company); ?> <html> <head> <title>Nominate <?php echo getuserdetails("company", company); ?> for The WOW! Awards</title> <link href="mobile.css" rel="stylesheet" type="text/css" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script> <script type="text/javascript" src="javascript/form.js"></script> </head> <div id = "header"> <img src="images/mobile_banner.png"); </div> <div id="content"> <?php mobileerror(); ?> <h2>NOMINATE US!</h2> <div id = "rulesheading"> <b>There are just four criteria to be met:</b><br /> </div> <div id = "rules"> <ol> <li>It has to be for service that made you go WOW!</li> <li>It should be a recent experience</li> <li>It must have happened to you personally</li> <li>Employees of LoveFilm may not nominate</li> </ol> </div> <form id= "contactform" action="mobile_proc_nominate.php" method="post"> <fieldset><legend>Nomination Form</legend> <input type="hidden" name="type" value="nomination"/> <input type="hidden" name="jobtitle" value=" "/> <input type="hidden" name="department" value=" "/> <input type="hidden" name="mobile" value="1" /> <h4>Your Nomination Details</h4> <p> <?php if (!isset($_COOKIE['nominee'])){ ?> <!-- These stop the Java labels overwriting user text if error --> <label for="nominee">Tell us who WOW!ed you today (required)</label> <?php } ?> <input type="text" name="nominee" id="nominee" value="<?php echo readcookie('nominee'); ?>" title="Tell us who WOW!ed you today"/> </p> <p> <?php if (!isset($_COOKIE['comment'])){ ?> <label for="comment">How, where and when did they WOW! you? (required)</label> <?php } ?> <textarea name="comment" id="comment" value="<?php echo $_COOKIE["comment"]; ?>" title="How, where and when did they WOW! you? (required)" /></textarea> </p> <h4>Your Details</h4> <p> <?php if (!isset($_COOKIE['name'])){ ?> <label for="name">Your Name (required)</label> <?php } ?> <input type="text" name="name" id="name" value="<?php echo readcookie('name'); ?>" title="Please tell us your name"/> </p> <p> <?php if (!isset($_COOKIE['email'])){ ?> <label for="email">Your Email (required)</label> <?php } ?> <input type="text" name="email" id="email" value="<?php echo readcookie('email'); ?>" title="Please enter your email address"/> </p> <p> <?php if (!isset($_COOKIE['phone'])){ ?> <label for="phone">Your Phone Number</label> <?php } ?> <input type="text" name="phone" id="phone" value="<?php echo readcookie('phone'); ?>" title="And your phone number"/> </p> <input class="button" type="submit" value="Send" /> </fieldset> </form> </div> <div id="footer"> </div> </body> </html> And here is the form processing script: Code: [Select] <?php include("functions.php"); checkaccess(0); require_once("includes/browser.php"); $browser = new Browser(); $thebrowser = ereg_replace("[^A-Za-z]", "", $browser->getBrowser()); $ver = $browser->getVersion(); setcookie("nominee",$_POST['nominee'],time()+3600); setcookie("comment",$_POST['comment'],time()+3600); setcookie("name",$_POST['name'],time()+3600); setcookie("email",$_POST['email'],time()+3600); setcookie("phone",$_POST['phone'],time()+3600); $email = $_POST['email']; if(!eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) { $email_error="TRUE"; } if ($thebrowser.$ver != "InternetExplorer6.0") { /* if(!captcha() ) { header("location: nominate.php?err=Spam Protection Code"); } else*/ if($_POST['name']=="" || $_POST['name']=="Your Name (required)" || $_POST['nominee']=="Tell us who WOW!ed you today (required)" || $_POST['nominee']=="" || $_POST['comment']=="How, where and when did they WOW! you? (required)" || $_POST['comment']=="" || $_POST['email']=="" || $_POST['email']=="Your Email (required)" || $email_error=="TRUE" ) { header("location: mobile.php?err=Please complete the required fields"); } else { connect(); $name=format_text_for_database($_POST['name']); $email=format_text_for_database($_POST['email']); $phone=format_text_for_database($_POST['phone']); $nominee=format_text_for_database($_POST['nominee']); $jobtitle=format_text_for_database($_POST['jobtitle']); $department=format_text_for_database($_POST['department']); $comment=format_text_for_database($_POST['comment']); $type=format_text_for_database($_POST['type']); $cid=company; $mobile=format_text_for_database($_POST['mobile']); $sql=mysql_query("insert into comments (date, name, email, phone, department, nominee, jobtitle, comment, type, cid, mobile) values (now(), '$name', '$email', '$phone', '$department', '$nominee', '$jobtitle', '$comment', '$type', $cid, $mobile)"); $lastid=mysql_insert_id(); disconnect(); senduseremail($lastid); sendclientemail($lastid); header("location: mobile_thanks.php"); } } if ($thebrowser.$ver == "InternetExplorer6.0") { /* if(!captcha_spam() ) { header("location: nominate.php?err=Please re-enter the Spam Protection Code"); } else*/ if($_POST['name']=="" || $_POST['email']=="" || $_POST['comment']=="") { header("location: nominate.php?err=Please complete the required fields"); } else { connect(); $name=format_text_for_database($_POST['name']); $email=format_text_for_database($_POST['email']); $phone=format_text_for_database($_POST['phone']); $nominee=format_text_for_database($_POST['nominee']); $jobtitle=format_text_for_database($_POST['jobtitle']); $department=format_text_for_database($_POST['department']); $comment=format_text_for_database($_POST['comment']); $type=format_text_for_database($_POST['type']); $cid=company; $sql=mysql_query("insert into comments (date, name, email, phone, department, nominee, jobtitle, comment, type, cid) values (now(), '$name', '$email', '$phone', '$department', '$nominee', '$jobtitle', '$comment', '$type', $cid)"); $lastid=mysql_insert_id(); disconnect(); senduseremail($lastid); sendclientemail($lastid); header("location: mobile_thanks.php"); } } ?> Any pointers would be greatly appreciated. KN First, I would like to say hi to everyone, I just registered, so I am new to the forums! But at any rate, I have a question. I have a form that I have programmed in PHP and upon completion of the form, sends the inputed information to my clients e-mail (acts as a lead) and redirects the user to the main part of the website, where you can access all of the content. Now, I need a little assistance on how to make it so if the same user comes back to the site again, they won't always have to fill out the form and it will just forward them to the main page. Clarification: This is what I'm trying to figure out When you go to the url for the first time, the index page has the form on it that must be filled out before you can access the rest of the pages on the website (I have this set as a redirect in the php processing after you submit the form). What coding would I have to add to the html on the form page (index) and/or my php processor and/or the html on the page you are redirected to? My overall goal is for the user to only see the form page once, after they have submitted it the first time, the next time they visit the url, I want them automatically re-directed to the main part of the site since they already completed the form. For Example: (I have this part programmed and working already) The user goes to http://www.example.com for the first time and they see the page with the form on it. They fill it out and click "Submit" and are re-directed to http://www.example.com/page2.html, this redirect is handled with a header "location" command. (This is the part I need help with) At a future time the same user returns to http://www.example.com and since they have already filled out the form they are automatically re-directed to http://www.example.com/page2.html without having to hit the "Submit" button or really even see the form page. Thank you very much in advance, I appreciate your help! I want to update a value by setting cookie. I use this code: Code: [Select] <?php if (isset($_POST['ChangeOrdering'])) { setcookie("Ordering", $_POST['ChangeOrdering'], time() + 31536000); } echo $_COOKIE["Ordering"]; ?> <form method="post" action="<?php echo $_SERVER["PHP_SELF"] ?>"> Reorder messages: <select name="ChangeOrdering"> <option value="DateAdded ASC">Oldest first</option> <option value="DateAdded DESC">Newest first</option> <option value="Title ASC">By Title, A-Z</option> <option value="Title DESC">By Title, Z-A</option> </select> <input type="submit" value=" Save Settings " /> </form> Problem is that echo will return the previous cookie set, not the last value. As a matter of fact, my problem is about updating the cookie. It seems that the browser load the cookie before it is updated by the POST value. I have an array for recipients 'recipients' => array( 'user@example.com', ),() and I need to mail different recipients by form option, something like this switch($_POST['color']){ case 'red': $recipient = 'redperson@example.com'; break; case 'green': $recipient = 'greenperson@example.com'; break; case 'blue': $recipient = 'blueperson@example.com'; break; default: $recipient = 'user@example.com'; }() I don't know how to combine the two? Hi, I have an html form in "send.htm" that sends data to "retrieve.php" with the following structu send.htm: Code: [Select] <html> <body> <form method="post" action="retrieve.php" <select id='select' name='select' > <option>option1</option> <option>option2</option> <option>option3</option> <option>etc...</option> </select> <input type="submit"> </form> </body> </html> retrieve.php: Code: [Select] <?php $selectedoption = $_POST['select']; print" <html> <body> <select id='select' name='select' > <option>option1</option> <option>option2</option> <option>option3</option> <option>etc...</option> </select> </body> </html> "; ?> How do I specify that the select menu in retrieve.php should have the option selected that was chosen from the select menu in send.htm? I'm guessing this is probably quite straightforward, but I can't quite work it out. Please help! Thanks. Hi I have a list of states using the array method in a form. The drop down menu works fine. I want to save the user choice,if the form is re-displayed due to a blank field or pattern mismatch. I know I can use the selected=selected, but don't know wher to put the statement: My array is: state_province = array ("list of states", "provinces") Var in my labels array is "state"=>"state" Here is my code for the select/option statement: { if($field == "state") { echo "<div class='province_state'><label for='state' size='10'>* Province/State</label><select>"; foreach($state_province as $state) { echo "\n<option value='$state_province' /> "; echo $state ; echo "</option>"; } echo "</select></div>\n"; } ?Is this the correct code to add and where would I add it? if(@$_POST['state'] == $value) { echo "selected='selected' "; } if a user clicks ?hide=1 or ?hide=2 it does Code: [Select] if (isset($_GET['hide'])){ $id = intval($_GET['hide']); setcookie('hide', ''.$id.'',time()+32000000); header('Location: index.php'); exit; } How do I make it so if they click ?hide=1 it ad's 1, but what if they do ?hide=2 also? it would need to be 1,2 not just 2. I have part of my script that I have used many times in many diffrent applications that works just fine. But in this use it refuses to set the cookie or do anything besides the redirect for that matter. // if login is ok then we add a cookie $ip = $_SERVER['REMOTE_ADDR']; $datem = date("j F Y, g:i a"); mysql_query("UPDATE YBK_Login SET date = '$datem' AND ip = '$ip' WHERE ID = '{{$info['ID']}'")or die(mysql_error()); $_POST['username'] = stripslashes($_POST['username']); $hour = time() + 3600; setcookie('ID_WatsonN', $_POST['username'], 0); setcookie('Key_WatsonN', $_POST['pass'], 0); setcookie('UID_WatsonN', $info['ID'], 0); setcookie('LOGIN', $info['ID'], time()+3); //then redirect them to the members area Header("Location: dashboard.php"); how can i set cookie like a*dm*n@**t*r*c**.*c** ?? Code: [Select] $cookkiee = $islem_1['mail'] ; $sayisi = strlen($cookkiee)-1 ; $cok = $islem_1['mail'] ; for($i=0;$i<=$sayisi;$i++) { $sifr = rand(0,2); if($sifr ==0) { $cok[$i]= '*'; } $dizik = $cok[$i]; setrawcookie("kayip",$dizik,time()+(60*30),"/"); $_COOKIE['kayip'] = $dizik; echo $dizi // etc . a*dm*n@**t*r*c**.*c** } echo $_COOKIE['kayip']; // etc. just one char being like random a Ok I have my login form and previously I was using $_SESSION untill I learned this removes data when browser is closed. Someone said to me to use cookies but I have no clue where to begin on setting a cookie or reading information from it. Can anyone point me to a tutorial on cookies? i want to store the nickname of the user as a cookie.. somthing like set cookie name=nickname,value=smarty,expires after 1 week i know cookies are stored against domain names. what happens when another person logs in the same computer, with different login, and his nickname is diff how does the cookie get handled, and how does the right nickname flash against the right persons login id... Hey PHPFreaks! I have a problem with my login script, because when i login it sets a cookie and it all works. But when i got redirected and refresh the page, my script turns an error which says i'm not logged in? how come? This is what finds the cookie and redirects me Code: [Select] if(!isset($_SESSION['auth']) && !isset($_COOKIE['authcookie'])) { $_SESSION['ERROR'] = 7; header('location: index.php?login'); } I have a question about cookies I want the cookie to work on all the paths / folders / directorys located in a root path. So say like.. http://www.site.com/members/login.php is the folder which sets the cookie, then this cookie will also work on like.. http://www.site.com/bla/boo/works.php I'm trying to do: setcookie(Data1, 'valueofthecookie', '/', '.site.com', 1); But its not working... Hi all, I'm struggling with a program I'm trying to write with cookies, so any help would be very much appreciated!! What I'm wanting to do is when someone visits my site, I want to display content until the end of the day, and once the days up it disappears forever/until the cookies are deleted. Could someone help me with this? Thanks lots in advance, Jake Hi, I was trying to use setcookie on my website but when I try to use, it wasn't setting anything and then I tried to make sure if it's setting something, I added Code: [Select] echo $_COOKIE;But it shows Array (just the word) instead of tblogvalue. This is the code I'm using; Code: [Select] $Month = 2592000 + time(); setcookie(tblog, tblogvalue, $Month); echo $_COOKIE; Hi, I'm trying to set cookie but all in vain. I've already posted my php code in my last post. "COOKIE PROBLEM". I think there is nothing wrong with code. may be i need to enable to load some library or something in xampp. Is there anyone who knows what setting do i need to do for enable cookies and in which file? Please help <? $name = $_GET['name']; $game2 = "2": setcookie('game_".$name."',$game2, time()+3600); ?> would this work? if not how can it be done? cheers matt Hello, I am new to this forum and joined in hope I could get some help in relation to some PHP problems I have stumbled across within my work. I am currently working on an online store I am building from scratch. I have already built the basic system behind it and am now starting to implement a more user friendly design to it with JS validation, stylesheets and imaging layout. I have however come across a COOKIE problem with my login script. The purpose behind it is to only allow users into an area if they have logged in and declared cookies. I declare the cookies with 'setcookie()' then try and retrieve them with '$_COOKIE['firstname'];'. However since implementing my new design layout it has stopped being able to retrieve the cookies. Here is some of the script. I would greatly appreciate any help given ... Login.php Code: [Select] <?php //Validating input details and executing mysql query if ($username && $pass) { mysql_connect("$dhost","$dname","$dpass"); //Connection to mysql server @mysql_select_db("$dbase") or die ("Unable To Select Database!"); //Connection to stated database $query = "SELECT firstname, lastname, username FROM userdata WHERE password=SHA('$pass')"; //Retrieves firstname and lastname for username and password combination $result = @mysql_query ($query); $row = mysql_fetch_array ($result,MYSQL_NUM); //Return a record, if applicable if ($row) { setcookie('firstname', $row[0], time()+3600); setcookie('lastname', $row[1], time()+3600); setcookie('username', $row[2], time()+3600); //Set the cookies echo "<p class='Body-error-P'><span class='Body-text-T'>Login successful. If you are not redirected in 15 seconds click <A HREF='./index.php'>here</A></span></p>"; print "<meta HTTP-EQUIV='REFRESH' content='5 url=./index.php'>"; } else { //no record matched the query echo "<p class='Body-error-P'><span class='Body-text-T'>The username and password you entered are not valid.</span></p>"; } mysql_close(); //close database connection } } Index.php Code: [Select] <?php include_once ("config.php"); if(isset($_COOKIE['firstname'])) //if not cookie present, redirect the user { echo "<p class='Body-text-P'><span class='Body-text2-T'>You are now logged in, <b>".$_COOKIE['firstname'].' '.$_COOKIE['firstname']."</b></span</p>"; } else { echo '<p class="Body-text-P"><span class="Body-text-T">You are not logged in at this current time. Please login or register.</span</p>'; } ?> Let me know if you need anymore coding... |