PHP - Form Does Not Work If Photo Is Not Added
Hello:
I am working with a script that I am using to make a player roster - the user can add a photo, player title, number, years played, and a bio. The data comes from a submit form, then goes to the code below to process everything. It works fine if a photo is added, but if a photo is not added, the script does not work. Any idea why, and how I can fix it? Code: [Select] <?php // initialization $result_final = ""; $counter = 0; // List of our known photo types $known_photo_types = array( 'image/pjpeg' => 'jpg', 'image/jpeg' => 'jpg', 'image/gif' => 'gif', 'image/bmp' => 'bmp', 'image/x-png' => 'png' ); // GD Function List $gd_function_suffix = array( 'image/pjpeg' => 'JPEG', 'image/jpeg' => 'JPEG', 'image/gif' => 'GIF', 'image/bmp' => 'WBMP', 'image/x-png' => 'PNG' ); $photos_uploaded = $_FILES['photo_filename']; $player_title = $_POST['player_title']; $player_number = $_POST['player_number']; $years_played = $_POST['years_played']; $photo_caption = $_POST['photo_caption']; while( $counter <= count($photos_uploaded) ) { if($photos_uploaded['size'][$counter] > 0) { if(!array_key_exists($photos_uploaded['type'][$counter], $known_photo_types)) { $result_final .= "File ".($counter+1)." is not a photo<br />"; } else { //mysql_query( "INSERT INTO gallery_photos(`photo_filename`,`player_title`,`player_number`,`years_played`, `photo_caption`, `photo_category`) VALUES('0', '".addslashes($photo_caption[$counter])."', '".addslashes($_POST['category'])."')" ); mysql_query( "INSERT INTO gallery_photos(`photo_filename`,`player_title`,`player_number`,`years_played`, `photo_caption`, `photo_category`) VALUES('0', '".addslashes($player_title[$counter])."', '".addslashes($player_number[$counter])."' , '".addslashes($years_played[$counter])."', '".addslashes($photo_caption[$counter])."', '".addslashes($_POST['category'])."')" ); $new_id = mysql_insert_id(); $filetype = $photos_uploaded['type'][$counter]; $extention = $known_photo_types[$filetype]; $filename = $new_id.".".$extention; mysql_query( "UPDATE gallery_photos SET photo_filename='".addslashes($filename)."' WHERE photo_id='".addslashes($new_id)."'" ); // Store the orignal file copy($photos_uploaded['tmp_name'][$counter], $images_dir."/".$filename); // Let's get the Thumbnail size $size = GetImageSize( $images_dir."/".$filename ); if($size[0] > $size[1]) //{ //$thumbnail_width = 100; //$thumbnail_height = (int)(100 * $size[1] / $size[0]); //} //else //{ //$thumbnail_width = (int)(100 * $size[0] / $size[1]); //$thumbnail_height = 100; //} { //$thumbnail_width = 690; //$thumbnail_height = (int)(500 * $size[1] / $size[0]); $old_width = $size[0]; $old_height = $size[1]; $thumbnail_width = 690; $thumbnail_height = ($old_height * $thumbnail_width / $old_width); } else { $thumbnail_width = (int)(690 * $size[0] / $size[1]); $thumbnail_height = 500; } // Build Thumbnail with GD 1.x.x, you can use the other described methods too $function_suffix = $gd_function_suffix[$filetype]; $function_to_read = "ImageCreateFrom".$function_suffix; $function_to_write = "Image".$function_suffix; // Read the source file $source_handle = $function_to_read ( $images_dir."/".$filename ); if($source_handle) { // Let's create an blank image for the thumbnail //$destination_handle = ImageCreate ( $thumbnail_width, $thumbnail_height ); $destination_handle = imagecreatetruecolor( $thumbnail_width, $thumbnail_height ); // Now we resize it ImageCopyResized( $destination_handle, $source_handle, 0, 0, 0, 0, $thumbnail_width, $thumbnail_height, $size[0], $size[1] ); } // Let's save the thumbnail $function_to_write( $destination_handle, $images_dir."/tb_".$filename ); ImageDestroy($destination_handle ); // $result_final .= "<img src='".$images_dir. "/tb_".$filename."' style='margin-right: 20px; width: 100px;' />"; } } $counter++; } // Print Result echo <<<__HTML_END $result_final __HTML_END; ?> Thanks! Similar TutorialsHello: I wanted to learn how to add a file browse/save and send photo to a contact form. Form works fine, but I am trying to add this so a user can upload and send a photo of his or her artwork along with the contact information. Can someone tell me how this work? My other attempts failed so I'm trying to start with a clean form. This is the code I currently have: Code: [Select] <?php $error = NULL; $myDate = NULL; $FullName = NULL; $Address = NULL; $City = NULL; $State = NULL; $Zip = NULL; $Phone = NULL; $Email = NULL; $Website = NULL; $Comments = NULL; if(isset($_POST['submit'])) { $myDate = $_POST['myDate']; $FullName = $_POST['FullName']; $Address = $_POST['Address']; $City = $_POST['City']; $State = $_POST['State']; $Zip = $_POST['Zip']; $Phone = $_POST['Phone']; $Email = $_POST['Email']; $Website = $_POST['Website']; $Comments = $_POST['Comments']; if(empty($FullName)) { $error .= '<div style=\'margin-bottom: 6px;\'>- Enter your Name.</div>'; } if(empty($Email) || !preg_match('~^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$~',$Email)) { $error .= '<div style=\'margin-bottom: 6px;\'>- Enter a valid Email.</div>'; } if($error == NULL) { $sql = sprintf("INSERT INTO myContactData(myDate,FullName,Address,City,State,Zip,Phone,Email,Website,Comments) VALUES ('%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')", mysql_real_escape_string($myDate), mysql_real_escape_string($FullName), mysql_real_escape_string($Address), mysql_real_escape_string($City), mysql_real_escape_string($State), mysql_real_escape_string($Zip), mysql_real_escape_string($Phone), mysql_real_escape_string($Email), mysql_real_escape_string($Website), mysql_real_escape_string($Comments)); if(mysql_query($sql)) { $error .= '<div style=\'margin-bottom: 6px;\'>Thank you for contacting us. We will reply to your inquiry shortly.<br /><br /></div>'; mail( "mt@gmail.com", "Contact Request", "Date Sent: $myDate\n Full Name: $FullName\n Address: $Address\n City: $City\n State: $State\n Zip: $Zip\n Phone: $Phone\n Email: $Email\n Website: $Website\n Comments: $Comments\n", "From: $Email" ); unset($FullName); unset($Address); unset($City); unset($State); unset($Zip); unset($Phone); unset($Email); unset($Website); unset($Comments); } else { $error .= 'There was an error in our Database, please Try again!'; } } } ?> <form name="myform" action="" method="post"> <input type="hidden" name="myDate" size="45" maxlength="50" value="<?php echo date("F j, Y"); ?>" /> <div id="tableFormDiv"> <fieldset><span class="floatLeftFormWidth"><span class="textErrorItalic">* - Required</span></span> <span class="floatFormLeft"> </span></fieldset> <?php echo '<span class="textError">' . $error . '</span>';?> <fieldset><span class="floatLeftFormWidth"><span class="textErrorItalic">*</span> Full Name:</span> <span class="floatFormLeft"><input type="text" name="FullName" size="45" maxlength="50" value="<?php echo $FullName; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">Address:</span> <span class="floatFormLeft"><input type="text" name="Address" size="45" maxlength="50" value="<?php echo $Address; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">City:</span> <span class="floatFormLeft"><input type="text" name="City" size="45" maxlength="50" value="<?php echo $City; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">State:</span> <span class="floatFormLeft"><input type="text" name="State" size="45" maxlength="50" value="<?php echo $State; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">Zip:</span> <span class="floatFormLeft"><input type="text" name="Zip" size="45" maxlength="50" value="<?php echo $Zip; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">Phone:</span> <span class="floatFormLeft"><input type="text" name="Phone" size="45" maxlength="50" value="<?php echo $Phone; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth"><span class="textErrorItalic">*</span> Email:</span> <span class="floatFormLeft"><input type="text" name="Email" size="45" maxlength="50" value="<?php echo $Email; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">Website:</span> <span class="floatFormLeft"><input type="text" name="Website" size="45" maxlength="50" value="<?php echo $Website; ?>" /></span></fieldset> <fieldset><span class="floatLeftFormWidth">Comments:</span> <span class="floatFormLeft"><textarea name="Comments" cols="40" rows="10"><?php echo $Comments; ?></textarea></span></fieldset> </div> <input type="submit" name="submit" value="Submit" class="submitButton" /><br /> </form> Thanks very much! Hi, I am working on a registration login system and after a person registers and logs in, they will get the option to upload a profile picture. The picture and registration info will need to be in two different tables. I want to know the best way to associate the two (registration info and photo) so that I know who's picture goes with what registration info? I thought about IP address, but a user might register on one computer and login and upload a photo on another computer. Hi there, As the question says i tried several things but i can't work it out and my knowledge about php isn't that well. Awesome, after stripping off about 90% of my code, I found a tiny little error that made the whole thing not work. It was a form error. lol. So I have it working as a tiny skeleton now where it can return data matched LIKE a date of birth in database. But when it doesn't, it is supposed to echo "Sorry there was nothing in db matching that". But that message never appears. Please any advice appreciated. thank you. and that will be it for the night/morning now. lol Code: [Select] <?php $host = " "; $database = " "; $username = " "; $password = " *"; $tbl_name = "users"; $conn = mysql_connect($host, $username, $password) or die("Could not connect: " . mysql_error()); mysql_select_db($database); if(isset($_POST['submit'])) { $dob= $_POST['dob']; $result = mysql_query("SELECT * FROM users WHERE dob LIKE '%$dob'"); if ($result) { while($row = mysql_fetch_array($result)) { echo $row['dob'] ; echo "<br />"; echo "CONGRATS!! you found one matching date of birth in the DB!"; } } else { echo "<br/> sorry ". $dob . "for date of birth is not in the database"; } } ?> <html> <body> <form action="login_successBACKUP02.php" method="post"> <input name="dob" type="text" size="20" id="dob" /> Date of Birth<br /> <input type="submit" name="submit" value="Search database" /> <input type="reset" value="Reset fields" /> </form> </body> </html> Any body please, Why my registration form page stoped working, don't feed the dbase any more, I'm the only one with access to make changes but I did not make any changes, just stoped out of no where, any ideas? So I've been trying to get my contact forms to work on my website and I cannot figure out where to change my email so when they submit it that it goes to my email. Along with another problem being when I click the submit button it does not show if it was submitted or if there was an error, etc. PLEASE HELP the code is below! I put my email address in the section where I thought it would be, but it doesn't seem to be working. <?php header('Content-type: application/json'); require_once('php-mailer/PHPMailerAutoload.php'); // Include PHPMailer $mail = new PHPMailer(); $emailTO = $emailBCC = $emailCC = array(); // Enter Your Sitename $sitename = 'levo...'; // Enter your email addresses: @required $emailTO[] = array( 'email' => 'stefan@...', 'name' => 'Stefan' ); // Enable bellow parameters & update your BCC email if require. //$emailBCC[] = array( 'email' => 'stefan', 'name' => 'Stefan' ); // Enable bellow parameters & update your CC email if require. //$emailCC[] = array( 'email' => 'stefan@', 'name' => 'Stefan' ); // Enter Email Subject $subject = "Contact Us" . ' - ' . $sitename; // Success Messages $msg_success = "We have <strong>successfully</strong> received your message. We'll get back to you soon."; if( $_SERVER['REQUEST_METHOD'] == 'POST') { if (isset($_POST["cf_email"]) && $_POST["cf_email"] != '' && isset($_POST["cf_name"]) && $_POST["cf_name"] != '') { // Form Fields $cf_email = $_POST["cf_email"]; $cf_name = $_POST["cf_name"]; $cf_address = isset($_POST["cf_subject"]) ? $_POST["cf_subject"] : ''; $cf_address = isset($_POST["cf_address"]) ? $_POST["cf_address"] : ''; $cf_company = isset($_POST["cf_company"]) ? $_POST["cf_company"] : ''; $cf_date = isset($_POST["cf_date"]) ? $_POST["cf_date"] : ''; $cf_budget = isset($_POST["cf_budget"]) ? $_POST["cf_budget"] : ''; $cf_msg = isset($_POST["cf_msg"]) ? $_POST["cf_msg"] : ''; $honeypot = isset($_POST["form-anti-honeypot"]) ? $_POST["form-anti-honeypot"] : ''; $bodymsg = ''; if ($honeypot == '' && !(empty($emailTO))) { $mail->IsHTML(true); $mail->CharSet = 'UTF-8'; $mail->From = $cf_email; $mail->FromName = $cf_name . ' - ' . $sitename; $mail->AddReplyTo($cf_email, $cf_name); $mail->Subject = $subject; foreach( $emailTO as $to ) { $mail->AddAddress( $to['email'] , $to['name'] ); } // if CC found if (!empty($emailCC)) { foreach( $emailCC as $cc ) { $mail->AddCC( $cc['email'] , $cc['name'] ); } } // if BCC found if (!empty($emailBCC)) { foreach( $emailBCC as $bcc ) { $mail->AddBCC( $bcc['email'] , $bcc['name'] ); } } // Include Form Fields into Body Message $bodymsg .= isset($cf_name) ? "Contact Name: $cf_name<br><br>" : ''; $bodymsg .= isset($cf_email) ? "Contact Email: $cf_email<br><br>" : ''; $bodymsg .= isset($cf_subject) ? "Contact Email: $cf_subject<br><br>" : ''; $bodymsg .= isset($cf_address) ? "Contact Address: $cf_address<br><br>" : ''; $bodymsg .= isset($cf_company) ? "Company: $cf_company<br><br>" : ''; $bodymsg .= isset($cf_date) ? "Date: $cf_date<br><br>" : ''; $bodymsg .= isset($cf_budget) ? "Budget: $cf_budget<br><br>" : ''; $bodymsg .= isset($cf_msg) ? "Message: $cf_msg<br><br>" : ''; $bodymsg .= $_SERVER['HTTP_REFERER'] ? '<br>---<br><br>This email was sent from: ' . $_SERVER['HTTP_REFERER'] : ''; $mail->MsgHTML( $bodymsg ); $is_emailed = $mail->Send(); if( $is_emailed === true ) { $response = array ('result' => "success", 'message' => $msg_success); } else { $response = array ('result' => "error", 'message' => $mail->ErrorInfo); } echo json_encode($response); } else { echo json_encode(array ('result' => "error", 'message' => "Bot <strong>Detected</strong>.! Clean yourself Botster.!")); } } else { echo json_encode(array ('result' => "error", 'message' => "Please <strong>Fill up</strong> all required fields and try again.")); } }
I have this code as my session_init.php Code: [Select] <?php $_SESSION['APP_MX'] = "mail.mywebsite.com"; $_SESSION['APP_SERVER'] = "mywebsite.com"; $_SESSION['SITE_EMAIL'] = "admin@mywebsite.com"; $_SESSION['MYSQL_SERVER1'] = "localhost"; $_SESSION['MYSQL_LOGIN1'] = "root"; $_SESSION['MYSQL_PASS1'] = "password"; $_SESSION['MYSQL_DB1'] = "sample"; $_SESSION['LOGGEDIN'] = ""; $_SESSION['USERID'] = 0; $_SESSION['EMAIL'] = ""; $_SESSION['FNAME'] = ""; $_SESSION['LNAME'] = ""; $_SESSION['SESSION'] = true; ?> and I'm calling it here Code: [Select] <?php if(!isset($_SESSION['SESSION'])) require('../email/session_init.php'); $fname = $_POST["fname"]; $lname = $_POST["lname"]; $email= $_POST["email"]; $company = $_POST["company"]; $subject = $_POST["subject"]; $phone = $_POST["phone"]; $msg = $_POST["msg"]; $mail = "Hello $fname,\n\nThank your for your email.\nWe look forward to your evaluation of our product.\n\n"; $mail .= "Here is the information you have given us:\n\n"; $mail .= "Name: ".$fname." ".$lname."\n"; $mail .= "Company: ".$company."\n"; $mail .= "Email Address: ".$email."\n"; $mail .= "Phone: ".$phone."\n\n"; $mail .= "Subject: ".$subject."\n"; $mail .= "Your Message:\n".$msg."\n\n\n"; $mail .= "Best Regards,\nCustomer Service\n\n"; // If any lines are larger than 70 characters, we will use wordwrap() $message = wordwrap($msg, 70); mail($email, $subject, $mail, "From: admin@".$_SESSION['APP_SERVER']."\r\n"); $mail = str_replace("\n", "<br>", $mail); ?> And I'm getting this error Quote Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 26, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\wamp\www\php\website_interactivity\email\email_sent.php on line 33 I wonder if there's any modification that I need to do in my php.ini file. Anyone? Hi I'm trying to set up my first contact form, but I keep getting this error message:
Parse error: syntax error, unexpected end of file in /home/remem539/public_html/php/testform.php on line 85
here's my code, what am I doing wrong?
<?php
if ($_POST['parse_var'] == "testform"){ Here's my website page with the Contact Form: http://www.3dmark3t.com/contact.html Now the problem is if you don't fill out any info it will have an error message with all the things but not the selection. when I get the email it shows if the user has selected something out of the selection box but it doesn't have an error message and it still goes through even if you don't select something. could someone please help me with my PHP form validation. PHP: Code: [Select] <?php if(isset($_POST['email'])) { // CHANGE THE TWO LINES BELOW $email_to = "user@domain.com"; $email_subject = "3DMark3t Contact:"; function died($error) { // your error code can go here echo "We are very sorry, but there were error(s) found with the form you submitted. "; echo "These errors appear below.<br /><br />"; echo $error."<br /><br />"; echo "Please go back and fix these errors.<br /><br />"; die(); } // validation expected data exists if(!isset($_POST['first_name']) || !isset($_POST['last_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['comments'])) { if(isset($_POST['formGender']) ) { $errorMessage = ""; $var3dmodels = $_POST['3DModels']; $vargraphic_design = $_POST['Graphic Design']; $varweb_design = $_POST['Web Design']; $vartutorials = $_POST['Tutorials']; $varreport = $_POST['Report']; $varrequests = $_POST['Requests']; } died('We are sorry, but there appears to be a problem with the form you submitted.'); } $first_name = $_POST['first_name']; // required $last_name = $_POST['last_name']; // required $email_from = $_POST['email']; // required $telephone = $_POST['telephone']; // not required $formGender = $_POST['formGender']; // required $comments = $_POST['comments']; // required $error_message = ""; $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/'; if(!preg_match($email_exp,$email_from)) { $error_message .= 'The Email Address you entered does not appear to be valid.<br />'; } $string_exp = "/^[A-Za-z .'-]+$/"; if(!preg_match($string_exp,$first_name)) { $error_message .= 'The First Name you entered does not appear to be valid.<br />'; } if(!preg_match($string_exp,$last_name)) { $error_message .= 'The Last Name you entered does not appear to be valid.<br />'; } if(!isset($_POST['formGender'])) { $errorMessage .= "<li>You forgot to select your Gender!</li>"; } if(strlen($comments) < 2) { $error_message .= 'The Comments you entered do not appear to be valid.<br />'; } if(strlen($error_message) > 0) { died($error_message); } $email_message = "3DMark3t Contact:"; function clean_string($string) { $bad = array("content-type","bcc:","to:","cc:","href"); return str_replace($bad,"",$string); } $email_message .= "First Name: ".clean_string($first_name)."\n"; $email_message .= "Last Name: ".clean_string($last_name)."\n"; $email_message .= "Email: ".clean_string($email_from)."\n"; $email_message .= "Telephone: ".clean_string($telephone)."\n"; $email_message .= "Select One: ".clean_string($formGender)."\n"; $email_message .= "Comments: ".clean_string($comments)."\n"; // create email headers $headers = 'From: '.$email_from."\r\n". 'Reply-To: '.$email_from."\r\n" . 'X-Mailer: PHP/' . phpversion(); @mail($email_to, $email_subject, $email_message, $headers); ?> <!-- place your own success html below --> Thank you for contacting us. We will be in touch with you very soon. <meta http-equiv="refresh" content="3; URL=http://www.3dmark3t.com" /> <?php } die(); ?> HTML: Code: [Select] <html> <head> </head> <body> <form name="htmlform" method="post" action="php/html_form_send.php"> <table width="450px"> </tr> <tr> <td valign="top"> <label for="first_name">First Name *</label> </td> <td valign="top"> <input type="text" name="first_name" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="last_name">Last Name *</label> </td> <td valign="top"> <input type="text" name="last_name" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="email">Email Address *</label> </td> <td valign="top"> <input type="text" name="email" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="telephone">Telephone Number</label> </td> <td valign="top"> <input type="text" name="telephone" maxlength="30" size="30"> </td> </tr> <tr> <td valign="top"> <label for="select">Select One *</label> </td> <td valign="top"> <select name="formGender"> <option value="">Select...</option> <option value="3DModels">3DModels</option> <option value="Graphic Design">Graphic Design</option> <option value="Web Design">Web Design</option> <option value="Tutorials">Tutorials</option> <option value="Report">Report</option> <option value="Requests">Requests</option> </select> </td> </tr> <tr> <td valign="top"> <label for="comments">Comments *</label> </td> <td valign="top"> <textarea name="comments" maxlength="1000" cols="32.5" rows="6"></textarea> </td> </tr> <tr> <td colspan="2" style="text-align:center"> <input type="submit" value="Submit"> </td> </tr> </table> </form> </body> </html> Ok so a few days ago I was alerted that my site was vulnerable to XSS injections in my search form. I modified the php script to prevent any malicious activity by adding this to it: Code: [Select] "/\<(script).*\>.*\<\/(script)\>/isU", " ", But now anytime I put anything into the search form nothing is returned. Please advice. Here is the script in it's entirety. Code: [Select] <?php mysql_connect ("localhost", "","") or die (mysql_error()); mysql_select_db (""); $search = mysql_real_escape_string(preg_replace('/[^\w\'\"\@\-\.\,\(\) ]/i', '', "/\<(script).*\>.*\<\/(script)\>/isU", " ", $_POST['search'])); $sql = mysql_query("SELECT * FROM sales WHERE contact LIKE '%$search%' OR phone LIKE '%$search%' OR office LIKE '%$search%' OR town LIKE '%$search%' OR cross_streets LIKE '%$search%' OR description LIKE '%$search%' OR email LIKE '%$search%' OR price LIKE '%$search%' order by `date_created`"); echo "<strong>Click Headers to Sort</strong>"; echo "<br/><strong>Your Results for: </strong>"; echo $_POST['search']; echo "<table border='0' align='center' bgcolor='#999969' cellpadding='3' bordercolor='#000000' table class='sortable' table id='results'> <tr> <th> Title </th> <th> Price </th> <th> Bed </th> <th> Bath </th> <th> Contact </th> <th> Office </th> <th> Phone </th> </tr>"; while ($row = mysql_fetch_array($sql)){ echo "<tr> <td bgcolor='#FFFFFF' style='color: #000' align='center'> <a href='classified/sales/index.php?id=".$row['id']."'>" . $row['title'] . "</a></td> <td bgcolor='#FFFFFF' style='color: #000' align='center'>$" . $row['price'] . "</td> <td bgcolor='#FFFFFF' style='color: #000' align='center'>" . $row['rooms'] . "</td> <td bgcolor='#FFFFFF' style='color: #000' align='center'>" . $row['bath'] . "</td> <td bgcolor='#FFFFFF' style='color: #000' align='center'>" . $row['contact'] . "</td> <td bgcolor='#FFFFFF' style='color: #000' align='center'>" . $row['office'] . "</td> <td bgcolor='#FFFFFF' style='color: #000' align='center'>" . $row['phone'] . "</td> </tr>"; } echo "</table>"; print_r($apts) ?> Thanks Can anyone explain... (note this is first time using PHP , dont have a clue, only using it as FLash CS5 wont send emails forms directly) so add all the details and explain it all please.) why my yahoo email is not detecting this at all. Also I managed some success earlier with earlier attempts but eveythign was surrounded with html tags even though I set them to off in Flash on the property tabs on the input text. In the Flash file . swf the send button has this code Code: [Select] on(release){ form.loadVariables("email_send.php", "POST"); } and the movie containing the input text fields has this code Code: [Select] onClipEvent(data){ _root.nextFrame(); } the next page is a thank you screen The variables in the input text boxes in the Flash file are name, dept, phone, email and message Code: [Select] <?php $sendTo = "chris.bruneluni@yahoo.co.uk"; $subject = "Message from chriscreativity.com"; $headers = "From: ". $_POST("name"); $headers = "Postion: ". $_POST["dept"]; $headers = "<". $_POST["email"] .">". "\r\n"; $headers = "Reply-To: " . $_POST["email"] . "\r\n"; $headers = "Return-Path: ". $_POST["email"] ; $headers = $_POST["phone"]; $message = $_POST["message"]; $message = wordwrap($message, 70); mail($sendTo, $subject, $headers, $message); ?><\Strong> Please can you help to A) get it to email my yahoo email B) make an email that looks like Name: Micky Dept : Disney Emial : Mick @mouse.com etc not <TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Comic Sans MS" SIZE="16" COLOR="#000000" LETTERSPACING="0" KERNING="0">Micky</FONT></P></TEXTFORMAT><TEXTFORMAT LEADING="2"><P ALIGN="LEFT"><FONT FACE="Comic Sans MS" SIZE="16" COLOR="#000000" LETTERSPACING="0" KERNING="0"> please [attachment deleted by admin] Hey, Wondering if this would work, it is based on the idea that everyone who is a real visitor will be using a browser, is that correct? Do robots use browsers too? if so, it wont work! haha. <? $browser = mb_substr($_SERVER['HTTP_USER_AGENT'], 0, 31); if (!empty($browser)){echo '<form action="send.php" method="post">';} ?> Just thought it was nice and simple, and couldnt see anywhere if it would work or not... Hi there. My problem is quite simple, but carries lots of questions of why the hell is this happening. I'm new at PHP but I'm familiar with the syntax, since It's been 3 years since I code in C, 1 in Java and half year in JS (with HTML and CSS of course). I was creating a page where I could validate a HTML form using PHP script, it was going everything allright, until I couldn't use the data that was going to the $_POST array. I tested it on some other file and It was like the server just didn't allowed me to do it so. I searched around on internet and I found the print_r() function, which shows the data as an associative array in $_POST, like this: array(KeyName => ValueName). Check the code and please, help me find why is this happening. I'm brazillian and all I know about english came from netflix, so i'm sorry if I wrote anything wrong. Thanks S&Z
<!DOCTYPE html> This topic has been moved to JavaScript Help. http://www.phpfreaks.com/forums/index.php?topic=330364.0 The file test2.php consists of these simple forms: <?php for($i=0; $i<=5; $i++){ echo "<form action='reset4.php' method='get' name='yourForm'>"; echo "<button type='submit' value='delete' name='remove_" . $i . "' class='deletebtn'>X</button>"; echo "</form>"; } ?> It submits to reset4.php which is this simple code: <?php header("Location: test2.php"); exit; for($i=0; $i<=5; $i++){ if (isset($_REQUEST["remove_$i"])){ echo "Deleted"; }} ?> But it doesn't work. The $_REQUEST doesn't populate the address field and it apparently never gets submitted to reset4.php like it should. This is such a simple program, I can't imagine why it doesn't work. Hi Guys, I am trying to get the below code to work - search form with textbox, dropdown and submit button. I found scripts on the web but the addition of the pagination just causes an error. I spent hours tweaking it but alas I cant see the solution. Perhaps someone could help please. I would love to see an example with 1 textbox, 2 dropdowns and a submit button or a link to such a tutorial. My googling has hit a dead end. In the below code I can run a search and the reults are listed on results.php. Results get screwed up when I go to pagination page 2,3,4 etc...I think i need to integrate $max somewhere in the Code: [Select] $data = mysql_query("SELECT * FROM users WHERE upper($field) LIKE'%$find%'"); Thanks Code: [Select] <h2>Search</h2> <form name="search" method="post" action="results.php"> Seach for: <input type="text" name="find" /> in <Select NAME="field"> <Option VALUE="fname">First Name</option> <Option VALUE="lname">Last Name</option> <Option VALUE="result">Profile</option> </Select> <input type="hidden" name="searching" value="yes" /> <input type="submit" name="search" value="Search" /> </form> //results.php <? // Grab POST data sent from form $field = @$_POST['field'] ; $find = @$_POST['find'] ; $searching = @$_POST['searching'] ; //This is only displayed if they have submitted the form if ($searching =="yes") { echo "<h2>Results</h2><p>"; //If they did not enter a search term we give them an error if ($find == "") { echo "<p>You forgot to enter a search term"; exit; } // Otherwise we connect to our Database mysql_connect("mysql.yourhost.com", "user_name", "password") or die(mysql_error()); mysql_select_db("database_name") or die(mysql_error()); // We preform a bit of filtering $find = strtoupper($find); $find = strip_tags($find); $find = trim ($find); //Now we search for our search term, in the field the user specified $data = mysql_query("SELECT * FROM users WHERE upper($field) LIKE'%$find%'"); //This counts the number or results - and if there wasn't any it gives them a little message explaining that $anymatches=mysql_num_rows($data); if ($anymatches == 0) { echo "Sorry, but we can not find an entry to match your query<br><br>"; } //And we remind them what they searched for echo "<b>Searched For:</b> " .$find; } ?> <?php if(!isset($_REQUEST['pagenum'])) { $pagenum=1; } else { $pagenum=$_REQUEST['pagenum']; } //Here we count the number of results //Edit $data to be your query $rows = mysql_num_rows($data); //This is the number of results displayed per page $page_rows = 4; //This tells us the page number of our last page $last = ceil($rows/$page_rows); //this makes sure the page number isn't below one, or more than our maximum pages if ($pagenum < 1) { $pagenum = 1; } elseif ($pagenum > $last) { $pagenum = $last; } //This sets the range to display in our query $max = 'limit ' .($pagenum - 1) * $page_rows .',' .$page_rows; //This is your query again, the same one... the only difference is we add $max into it //$data = mysql_query("SELECT * FROM topsites $max") or die(mysql_error()); this works with pagination hmmm //This is where you display your query results //And we display the results while($result = mysql_fetch_array( $data )) { echo $result['fname']; echo " "; echo $result['lname']; echo "<br>"; echo $result['info']; echo "<br>"; echo "<br>"; } echo "<p>"; // This shows the user what page they are on, and the total number of pages echo " --Page $pagenum of $last-- <p>"; // First we check if we are on page one. If we are then we don't need a link to the previous page or the first page so we do nothing. If we aren't then we generate links to the first page, and to the previous page. if ($pagenum == 1) { } else { echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=1'> <<-First</a> "; echo " "; $previous = $pagenum-1; echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$previous'> <-Previous</a> "; } //just a spacer echo " ---- "; //This does the same as above, only checking if we are on the last page, and then generating the Next and Last links if ($pagenum == $last) { } else { $next = $pagenum+1; echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$next'>Next -></a> "; echo " "; echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$last'>Last ->></a> "; } ?> Ok. I have read everything I could find on how to fix this problem...but nothing seems to work. I have some suspect reasons why I think it doesn't work, but I don't know how to fix it. I read the notice about posting "headers already sent" and nothing in there helped me either. I am at my wits end! I have a form that is contained in a left navigation file that is an "include" file for other pages of the website. Here is the code for the left navigation file: Code: [Select] <?php //process the email if (array_key_exists('send', $_POST)) { $to = 'jliss32@gmail.com'; $subject = 'Form Submission from JudeLaw LLC for Bankruptcy'; //list expected fields $expected = array('name', 'street','city', 'phone', 'email', 'time', 'hearaboutus', 'otherwho', 'who', 'needs', 'question'); //set required fields $required = array('name', 'street', 'city', 'phone', 'email'); //create empty array for missing fields $missing = array(); // assume that there is nothing suspect $suspect = false; // create a pattern to locate suspect phrases $pattern = '/Content-Type:|Bcc:|Cc:/i'; // function to check for suspect phrases function isSuspect($val, $pattern, &$suspect) { // if the variable is an array, loop through each element // and pass it recursively back to the same function if (is_array($val)) { foreach ($val as $item) { isSuspect($item, $pattern, $suspect); } } else { // if one of the suspect phrases is found, set Boolean to true if (preg_match($pattern, $val)) { $suspect = true; } } } // check the $_POST array and any sub-arrays for suspect content isSuspect($_POST, $pattern, $suspect); if ($suspect) { $mailSent = false; unset($missing); } else { // process the $_POST variables foreach ($_POST as $key => $value) { //assign to temporary variable and strip whitespace if not an array $temp = is_array($value) ? $value : trim($value); //if empty and required, add to $missing array if (empty($temp) && in_array($key, $required)) { array_push($missing, $key); } //otherwise, assign to a variable of the same name as $key elseif (in_array($key, $expected)) { ${$key} = $temp; } } } // validate the email address if (!empty($email)) { // regex to ensure no illegal characters in email address $checkEmail = '/^[^@]+@[^\s\r\n\'";,@%]+$/'; // reject the email address if it doesn't match if (!preg_match($checkEmail, $email)) { array_push($missing, 'email'); } } // go ahead only if not suspect and all required fields OK if (!$suspect && empty($missing)) { //set default values for variables that might not exist $hearaboutus = isset($hearaboutus) ? $hearaboutus : 'Nothing selected'; $needs = isset($needs) ? $needs : array('None selected'); //build the message $message = "$name\n\n"; $message .= "$street\n\n"; $message .= "$city\n\n"; $message .= "$phone\n\n"; $message .= "$email\n\n"; $message .= "Best time to reach you? $time\n\n"; $message .= "How did you hear about us? $hearaboutus\n\n"; $message .= "Other: $otherwho\n\n"; $message .= "Referred by: $who\n\n"; $message .= 'What do you need? '.implode(', ', $needs). "\n\n"; $message .= "$question\n\n"; //send it $mailSent = mail($to, $subject, $message); if ($mailSent) { // redirect the page with a fully qualified URL header('Location: http://www.judelawllc.com/contact-thank-you-bk.php'); exit; } } } ?> <div id="sidebarItem1"> <p><a href="http://www.referrallist.com/listing/judelaw-llc.html" target="_blank"><img src="http://www.judelawllc.com/images/martinoLogo.gif" width="216" height="168" alt="Tom Martino Referral List" /></a><br /> <br /> <a href="http://www.bbb.org/denver/business-reviews/60075-112/jude-law-llc-90107441" target="_blank"><img src="http://www.justgoodbusiness.biz/logoonline/getimage.php?bid=90107441&c=blue&h=1" width="187" height="83" border="0" title="Click to verify BBB accreditation and to see a BBB report." alt="Click to verify BBB accreditation and to see a BBB report." /></a></p> <p><img src="http://www.judelawllc.com/images/ColoradoBarAssoc_Logo.jpg" width="180" height="40" alt="Colorado Bar Association" /></p> <p><img src="http://www.judelawllc.com/images/nacba-logo.jpg" width="180" height="35" alt="National Association of Consumer Bankruptcy Attorneys" /></p> <!-- start RatePoint Widget - Please, do not change --> <iframe src="//sitetools.ratepoint.com/widget/36561?style=2&color=3&wide=1&number_of_reviews=1&average_rating=1&rotate_reviews=1&show_links=1" width="200" height="204" scrolling="no" frameborder="0" border="0"> </iframe> <p> <!-- end RatePoint Widget - Please, do not change --> </p> <A class=the_url href="http://ratepoint.com/tellus/36561" target=_blank>Rate us and write a review!</A> </div> <div id="sidebarItem4"> <h1 class="FormFill">Fill out the form below...<br /> Get a Call TODAY!</h1> <div id="sidebarItem4Content"> <?php if ($_POST && isset($missing) && !empty($missing)) { ?> <p class="warning">Please complete the missing item(s) indicated.</p> <?php } elseif ($_POST && !$mailSent) { ?> <p class="warning">Sorry, there was a problem sending your message. Please try again later. If you need immediate assistance, please call(303)757-5833! Thank you.</p> <?php } ?> <form id="contact" method="post" action=""> <p> <label for="name">Name:<?php if (isset($missing) && in_array('name', $missing)) { ?> <span class="warning">Please enter your name</span><?php } ?></label><br /> <input name="name" id="name" type="text" class="formbox" <?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['name']).'"'; } ?> /> </p> <p> <label for="street">Street Address:<?php if (isset($missing) && in_array('name', $missing)) { ?> <span class="warning">Please enter your street address</span><?php } ?></label><br /> <input name="street" id="street" type="text" class="formbox" <?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['street']).'"'; } ?> /> </p> <p> <label for="city">City/State/Zip<?php if (isset($missing) && in_array('name', $missing)) { ?> <span class="warning">Please enter your city/state/zip</span><?php } ?></label><br /> <input name="city" id="city" type="text" class="formbox" <?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['city']).'"'; } ?> /> </p> <p> <label for="phone">Phone:<?php if (isset($missing) && in_array('phone', $missing)) { ?> <span class="warning">Please enter your phone number</span><?php } ?></label><br /> <input name="phone" id="phone" type="text" class="formbox" <?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['phone']).'"'; } ?>/> </p> <p> <label for="email">E-mail:<?php if (isset($missing) && in_array('email', $missing)) { ?> <span class="warning">Please enter your email</span><?php } ?></label><br /> <input name="email" id="email" type="text" class="formbox" <?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['email']).'"'; } ?>/> </p> <p> <label for="select">Best Time To Reach You?</label><br /> <select name="time" id="time"> <option value="No reply" <?php if (!$_POST || $_POST['time'] == 'No reply') { ?> selected="selected" <?php } ?> >Select one</option> <option value="Any" <?php if (isset($missing) && $_POST['time'] == 'Any') { ?> selected="selected" <?php } ?> >Any</option> <option value="Morning" <?php if (isset($missing) && $_POST['time'] == 'Morning') { ?> selected="selected" <?php } ?> >Morning</option> <option value="Afternoon" <?php if (isset($missing) && $_POST['time'] == 'Afternoon') { ?> selected="selected" <?php } ?> >Afternoon</option> <option value="Evening" <?php if (isset($missing) && $_POST['time'] == 'Evening') { ?> selected="selected" <?php } ?> >Evening</option> </select> </p> <fieldset id="hearaboutus"> <p><strong class="FormText">How did you hear about us?</strong></p> <p> <input name ="hearaboutus" type="radio" value="Google" id="google" <?php $OK = isset($_POST['hearaboutus']) ? true:false; if($OK && isset($missing) && $_POST['hearaboutus'] == 'Google') { ?> checked="checked" <?php } ?> /> <label for="google">Google</label> <input name ="hearaboutus" type="radio" value="Yahoo" id="yahoo" <?php if ($OK && isset($missing) && $_POST['hearaboutus'] == 'Yahoo') { ?> checked="checked" <?php } ?> /> <label for="yahoo">Yahoo</label> <input name ="hearaboutus" type="radio" value="Bing" id="bing" <?php if ($OK && isset($missing) && $_POST['hearaboutus'] == 'Bing') { ?> checked="checked" <?php } ?> /> <label for="bing">Bing</label> <br /> <input name ="hearaboutus" type="radio" value="Tom Martino" id="tommartino" <?php if ($OK && isset($missing) && $_POST['hearaboutus'] == 'Tom Martino') { ?> checked="checked" <?php } ?> /> <label for="tommartino">Tom Martino</label> <input name ="hearaboutus" type="radio" value="Craigslist" id="craigslist" <?php if ($OK && isset($missing) && $_POST['hearaboutus'] == 'Craigslist') { ?> checked="checked" <?php } ?> /> <label for="craigslist">Craigslist</label> <br /> <input name ="hearaboutus" type="radio" value="Backpage" id="backpage" <?php if($OK && isset($missing) && $_POST['hearaboutus'] == 'Backpage') { ?> checked="checked" <?php } ?> /> <label for="backpage">Backpage</label> <input name ="hearaboutus" type="radio" value="Facebook" id="facebook" <?php if($OK && isset($missing) && $_POST['hearaboutus'] == 'Facebook') { ?> checked="checked" <?php } ?> /> <label for="facebook">Facebook</label> <br /> <input name ="hearaboutus" type="radio" value="AngiesList" id="angieslist" <?php if($OK && isset($missing) && $_POST['hearaboutus'] == 'AngiesList') { ?> checked="checked" <?php } ?> /> <label for="angieslist">Angie's List</label> <br /> <input name ="hearaboutus" type="radio" value="Other" id="othersite" <?php if ($OK && isset($missing) && $_POST['hearaboutus'] == 'Other') { ?> checked="checked" <?php } ?> /> <label for="othersite">Other</label><br /> <label for="otherwho">Please tell us where?</label><br /> <input name="otherwho" type="text" class="formbox" id="otherwho" value="" size="22" <?php if (isset($missing)) { echo 'value="'.htmlentities($_post['otherwho']).'"'; } ?>="<?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['otherwho']).'"'; } ?>" /> <br /> <input name ="hearaboutus" type="radio" value="Referral" id="referral" <?php if ($OK && isset($missing) && $_POST['hearaboutus'] == 'Referral') { ?> checked="checked" <?php } ?> /> <label for="referral">Referral</label><br /> <label for="who">Who referred you?</label><br /> <input name="who" type="text" class="formbox" id="who" value="" size="22" <?php if (isset($missing)) { echo 'value="'.htmlentities($_post['who']).'"'; } ?>="<?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['who']).'"'; } ?>" /> </p> </fieldset> <fieldset id="needs"> <p><strong class="FormText">What do you need?</strong></p> <p> <input type="checkbox" name="needs[]" value="I Want a Free Consultation" id="consult" <?php $OK = isset($_POST['needs']) ? true: false; if ($OK && isset($missing) && in_array('Schedule a showing', $_POST['needs'])) { ?> checked="checked" <?php } ?> /> <label for="consult">I Want a Free Consultation</label> <br /> <input type="checkbox" name="needs[]" value="Have a question" id="havequestion" <?php if ($OK && isset($missing) && in_array('Have a question', $_POST['needs'])) { ?> checked="checked" <?php } ?> /> <label for="haveaquestion">I Have A Question</label> </p> </fieldset> <p> <label for="question">How may we help you?</label><br /> <textarea name="question" cols="22" class="formbox" id="question" <?php if (isset($missing)) { echo 'value="'.htmlentities($_POST['question']).'"'; } ?>"></textarea> </p> <p> <input name="send" id="send" type="submit" value="Send message" /> <input name="reset" id="reset" type="reset" value="Reset Form" /> </p> </form> <br /> </div> </div> Everything worked fine until I wanted to redirect the user to another page for email confirmation. I need to have the user go to a new page so I can use the Google Analytics tracking code for PPC campaigns. So, here is a sample of how this file is included in other pages of the site. I suspect this is the problem, the other pages contain HTML before this file is included. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="generator" content="HTML Tidy for Linux (vers 6 November 2007), see www.w3.org" /> <title>Thank You! | JudeLaw LLC</title> <meta name="description" content="JudeLaw has a qualified and experienced attorney that practices in all (5) Federal Bankruptcy Courts in Colorado. JudeLaw is the lawyer with the experience that is able to file your case not only in the Denver Bankruptcy Court, but also in Fort Collins, LoveLand, Greeley, Colorado Springs, Grand Junction and Pueblo bankruptcy courts." /> <meta name="keywords" content="about JudeLaw, judelaw, jude law, bankruptcy, personal injury, attorney, lawyer, judelaw employees" /> <!-- STYLES --> <link href="http://www.judelawllc.com/styles/base.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="outerWrapper"> <div id="headerWrapper"><img src="../images/header-logo-01.jpg" width="800" height="137" alt="JudeLaw LLC" /></div> <div id="navWrapper"><?php require ('includes/mainNav.php'); ?></div> <div id="bodyWrapper"> <div id="sidebarWrapper"><?php require ('includes/content-nav-sidebar_thank.php'); ?></div> <div id="contentContainer"> <div id="contentContainerTitle"> <h1>Thank You for contacting us!</h1> </div> <div id="contentContainerBody"> <h5>Your message has been sent.</h5> <p>We will review your inquiry and will be able to help you with your situation very shortly. Thank you for considering Jude Law for your legal needs. <br /><br />If you need immediate assistance, please call 303-757-5833 and someone will be able to assist you. Thank you!</p> <!-- Google Code for contact form thank you Conversion Page --> <script type="text/javascript"> <!-- var google_conversion_id = 1035626379; var google_conversion_language = "en"; var google_conversion_format = "2"; var google_conversion_color = "ffffff"; var google_conversion_label = "9RXqCPXzgwEQi8_p7QM"; var google_conversion_value = 0; if (800.00) { google_conversion_value = 800.00; } //--> </script> <script type="text/javascript" src="http://www.googleadservices.com/pagead/conversion.js"> </script> <noscript> <div style="display:inline;"> <img height="1" width="1" style="border-style:none;" alt="" src="http://www.googleadservices.com/pagead/conversion/1035626379/?value=800.00&label=9RXqCPXzgwEQi8_p7QM&guid=ON&script=0"/> </div> </noscript> <SCRIPT> microsoft_adcenterconversion_domainid = 799687; microsoft_adcenterconversion_cp = 5050; microsoft_adcenterconversionparams = new Array(); microsoft_adcenterconversionparams[0] = "dedup=1"; </SCRIPT> <SCRIPT SRC="https://0.r.msn.com/scripts/microsoft_adcenterconversion.js"></SCRIPT> <NOSCRIPT><IMG width=1 height=1 SRC="https://799687.r.msn.com/?type=1&cp=1&dedup=1"/></NOSCRIPT><a href="http://advertising.microsoft.com/MSNadCenter/LearningCenter/adtracker.asp" target="_blank">::adCenter::</a> <SCRIPT language="JavaScript" type="text/javascript"> <!-- Yahoo! Inc. window.ysm_customData = new Object(); window.ysm_customData.conversion = "transId=,currency=,amount="; var ysm_accountid = "1TKLPE8MB57H8SOJHVOE3OU6KOO"; document.write("<SCR" + "IPT language='JavaScript' type='text/javascript' " + "SRC=//" + "srv3.wa.marketingsolutions.yahoo.com" + "/script/ScriptServlet" + "?aid=" + ysm_accountid + "></SCR" + "IPT>"); // --> </SCRIPT> </div> </div> <div class="clear"></div> <div id="footerWrapper"><?php require ('includes/footer.php'); ?></div> </body> </html> Please give me some new ideas on what to try in order to make this work. I just need to have the redirect work so I can still use the code for analytics to track conversions. Thank You! Mod edit: [code] . . . [/code] tags added. |