PHP - Creating An Error Page After Form Entry
When there is a duplicate entry in my database, I would like it to go to the another page that indicates the error, rather than the "Error: Duplicate entry 'username' for key 1". It happens if someone is going to join and there is a duplicate entry. I would rather it show one of my customized php pages rather than a black page stating the error.
I've tried to catch the entry with some php code but it bypasses it and continues with the duplicate error. I would appreciate any direction with this. Thanks! Similar TutorialsI have a table called "colors". It has 2 columns, id and color. All I'm trying to do is pull the data into the form, then edit the colors (for example - misspelled, etc.) Then submit it back to the table. Here is the code that pulls the data into a form so I can edit it: Code: [Select] <form action="adminupdatecolors.php" method="post"> <table width="500" border="1" cellpadding="10"> <tr> <td>Color Options:</td> <td> <? $result = mysql_query("SELECT * FROM colors"); while ($row = mysql_fetch_assoc($result)) { echo '<input type="text" name="color[]" value="' . $row['color'] . '"/>' . $row['id'] . '<br />'; } ?> </td> </tr> <tr> <td> </td> <td><input type="Submit" value="Update Colors"></td> </tr> </form> </table> Here is my update script: Code: [Select] <?php include("config.php"); include("db.php"); $id=$_POST['id']; $color=$_POST['color']; $result = mysql_query("SELECT id FROM colors ORDER BY id DESC LIMIT 0,1"); if ($row = mysql_fetch_assoc($result)) { $id = $row['id']; } $sql = "DELETE FROM colors WHERE id='$id'"; mysql_query($sql) or die("Error: ".mysql_error()); foreach ($color as $colorvalue) { $sql2 = "INSERT INTO colors (id,color) VALUES ($id,'$color')"; mysql_query($sql2) or die("Error: ".mysql_error()); } header("Location: " . $config_basedir . "adminhome.php"); ?> Hi I am getting this error message and don't know why. please help this is the message " Error: Duplicate entry '' for key 1 " Here is the code Code: [Select] <?php include'../DB-connection.php'; $sql="INSERT INTO Company(CompanyName,Address,Logo,PhoneNumber,ContactPerson) VALUES('".mysql_real_escape_string($_POST[CompanyName])."', '".mysql_real_escape_string($_POST[Address])."', '".mysql_real_escape_string($_POST[Logo])."', '".mysql_real_escape_string($_POST[PhoneNumber])."', '".mysql_real_escape_string($_POST[ContactPerson])."')"; if(!mysql_query($sql,$con)) { die(' Error: '. mysql_error()); } echo " <center>your compnay info added       <a href='User-Login.php'>Login to Post a job</a> </center>" ; mysql_close($con) ?> Hi there, I am trying to add a bit of php to capture an email address and add it to mysql database. This part works fine but i get this message: Error: Duplicate entry '' for key 'PRIMARY' How do i get rid of this error? Thanks! <?php session_start(); include('include/includes.php'); $cart = Cart::CreateInstance(); if(isset($_GET)){ foreach($_GET as $k=>$v){ $smarty->assign($k,$v); } } if(isset($_GET['remove'])){ $cart->RemoveItems($_GET['remove'],1); } if(isset($_GET['removeAll'])){ $cart->RemoveItems($_GET['removeAll'],$_GET['counts']); } if(isset($_GET['emptyCart'])){ if($_GET['emptyCart']){ $cart->EmptyCart(); header("Location: cart.html"); exit(0); }} if(isset($_GET['add'])){ $itemId = $_GET['add']; $size = $_GET['size']; if (isset($_GET['qty'])) { $qty = $_GET['qty']; } else { $qty = 1; } $cart->addItems($itemId.'-'.$size, array($size,$itemId), $qty); } $cart = Cart::CreateInstance(); $cartBox = $cart->GetCart(); //print_r($cartBox); $total = 0; $subTotal = array(); $db = new DB(); $prods = $db->select("SELECT friendly,name,id FROM products"); $smarty->assign('prods',$prods); if(is_array($cartBox)){ foreach($cartBox as $key=>$item){ $id = $cartBox[$key]['data']->_itemData[1]; $products = $db->select("SELECT detail,image,friendly,name FROM products WHERE id='$id'"); $detailjson = json_decode($products[0]['detail']); foreach($detailjson as $detail){ list($k, $v) = split_by_colon($detail); if($k == $cartBox[$key]['data']->_itemData[0]){ $price = $v;} } $cartBox[$key]['data']->_itemData[3] = $products[0]['image']; $cartBox[$key]['data']->_itemData[6] = $products[0]['name']; $cartBox[$key]['data']->_itemData[2] = $products[0]['friendly']; $cartBox[$key]['data']->_itemData[5] = $price; $sub = (int)$item['count'] * $price; $cartBox[$key]['data']->_itemData[4] = $sub; $total += $sub; } } else { $cartBox = array(); } $count = $cart->GetItemsCount(); $shipping = (int)0; if($total>0&&$total<5){ $shipping = 2.99; }elseif($total>5&&$total<10){ $shipping = 3.99; }elseif($total>10&&$total<15){ $shipping = 4.99; }elseif($total>15&&$total<20){ $shipping = 5.99; }elseif($total>20&&$total<30){ $shipping = 6.99; }elseif($total>30&&$total<40){ $shipping = 7.99; }elseif($total>40&&$total<50){ $shipping = 8.99; }elseif($total>50&&$total<60){ $shipping = 9.99; }elseif($total>60&&$total<70){ $shipping = 10.99; }elseif($total>70&&$total<80){ $shipping = 11.99; }elseif($total>80&&$total<90){ $shipping = 12.99; }elseif($total>90&&$total<100){ $shipping = 15.99; }elseif($total>100&&$total<110){ $shipping = 16.99; }elseif($total>110&&$total<120){ $shipping = 17.99; }elseif($total>120&&$total<130){ $shipping = 18.99; }elseif($total>130&&$total<140){ $shipping = 19.99; }elseif($total>140&&$total<150){ $shipping = 20.99; }elseif($total>150&&$total<160){ $shipping = 21.99; }elseif($total>160&&$total<170){ $shipping = 22.99; }elseif($total>170&&$total<180){ $shipping = 23.99; }elseif($total>180){ $shipping = 24.99; } /* 0 - 4.99 = 2.99 5 - 9.99 = 3.99 10 - 14.99 = 4.99 15 - 19.99 = 5.99 20 - 29.99 = 6.99 30 - 39.99 = 7.99 40 - 49.99 = 8.99 50 - 69.99 = 9.99 70 - 99.99 = 10.99 100+ = 12.99 */ if(isset($_GET['eushipping'])||(isset($_POST['rec_country'])&&$_POST['rec_country']!='uk')){ if($_POST['rec_country']=='au' || $_GET['country']=='au'){ //Set shipping for Austria $shipping = ceil($total/60.00)*30.00; }elseif($_POST['rec_country']=='be' || $_GET['country']=='be'){ //Set shipping for Belgium $shipping = ceil($total/60.00)*20.00; }elseif($_POST['rec_country']=='bu' || $_GET['country']=='bu'){ //Set shipping for Bulgaria $shipping = ceil($total/60.00)*50.00; }elseif($_POST['rec_country']=='cy' || $_GET['country']=='cy'){ //Set shipping for Cyprus $shipping = ceil($total/60.00)*108.00; }elseif($_POST['rec_country']=='cz' || $_GET['country']=='cz'){ //Set shipping for Czech Republic $shipping = ceil($total/60.00)*33.00; }elseif($_POST['rec_country']=='de' || $_GET['country']=='de'){ //Set shipping for Denmark $shipping = ceil($total/60.00)*30.00; }elseif($_POST['rec_country']=='es' || $_GET['country']=='es'){ //Set shipping for Estonia $shipping = ceil($total/60.00)*45.00; }elseif($_POST['rec_country']=='fi' || $_GET['country']=='fi'){ //Set shipping for Finalnd $shipping = ceil($total/60.00)*30.00; }elseif($_POST['rec_country']=='fr' || $_GET['country']=='fr'){ //Set shipping for France $shipping = ceil($total/60.00)*28.00; }elseif($_POST['rec_country']=='ge' || $_GET['country']=='ge'){ //Set shipping for Germany $shipping = ceil($total/60.00)*25.00; }elseif($_POST['rec_country']=='gr' || $_GET['country']=='gr'){ //Set shipping for Greece $shipping = ceil($total/60.00)*50.00; }elseif($_POST['rec_country']=='hu' || $_GET['country']=='hu'){ //Set shipping for Hungary $shipping = ceil($total/60.00)*25.00; }elseif($_POST['rec_country']=='ir' || $_GET['country']=='ir'){ //Set shipping for Ireland $shipping = ceil($total/60.00)*25.00; }elseif($_POST['rec_country']=='it' || $_GET['country']=='it'){ //Set shipping for Italy $shipping = ceil($total/60.00)*30.00; }elseif($_POST['rec_country']=='la' || $_GET['country']=='la'){ //Set shipping for Latvia $shipping = ceil($total/60.00)*42.00; }elseif($_POST['rec_country']=='li' || $_GET['country']=='li'){ //Set shipping for Lithuania $shipping = ceil($total/60.00)*35.00; }elseif($_POST['rec_country']=='lu' || $_GET['country']=='lu'){ //Set shipping for Luxembourg $shipping = ceil($total/60.00)*20.00; }elseif($_POST['rec_country']=='ma' || $_GET['country']=='ma'){ //Set shipping for Malta $shipping = ceil($total/60.00)*108.00; }elseif($_POST['rec_country']=='ne' || $_GET['country']=='ne'){ //Set shipping for Netherlands $shipping = ceil($total/60.00)*25.00; }elseif($_POST['rec_country']=='no' || $_GET['country']=='no'){ //Set shipping for Norway $shipping = ceil($total/60.00)*37.00; }elseif($_POST['rec_country']=='pol' || $_GET['country']=='pol'){ //Set shipping for Poland $shipping = ceil($total/60.00)*35.00; }elseif($_POST['rec_country']=='por' || $_GET['country']=='por'){ //Set shipping for Portugal $shipping = ceil($total/60.00)*30.00; }elseif($_POST['rec_country']=='ro' || $_GET['country']=='ro'){ //Set shipping for Romania $shipping = ceil($total/60.00)*48.00; }elseif($_POST['rec_country']=='slv' || $_GET['country']=='slv'){ //Set shipping for Slovakia $shipping = ceil($total/60.00)*32.00; }elseif($_POST['rec_country']=='slk' || $_GET['country']=='slk'){ //Set shipping for Slovenia $shipping = ceil($total/60.00)*29.00; }elseif($_POST['rec_country']=='sp' || $_GET['country']=='sp'){ //Set shipping for Spain $shipping = ceil($total/60.00)*36.00; }elseif($_POST['rec_country']=='swe' || $_GET['country']=='swe'){ //Set shipping for Sweden $shipping = ceil($total/60.00)*32.00; }elseif($_POST['rec_country']=='swi' || $_GET['country']=='swi'){ //Set shipping for Switzerland $shipping = ceil($total/60.00)*55.00; }elseif($_POST['rec_country']=='ukh' || $_GET['country']=='ukh'){ //Set shipping for UK - Highlnads and Islands $shipping = ceil($total/60.00)*18.00; }elseif($_POST['rec_country']=='ukn' || $_GET['country']=='ukn'){ //Set shipping for UK - Northern Island $shipping = ceil($total/60.00)*18.00; }elseif($_POST['rec_country']=='jng' || $_GET['country']=='jng'){ //Set shipping for Jersey and Guernsey $shipping = ceil($total/60.00)*34.00; } } /* */ if(isset($_GET['count'])){ echo (int)$count; exit; } if(isset($_GET['order'])){ if($_GET['order']){ }} if(isset($_GET['ajax'])){ $noAjax = $_GET['ajax']; }else{ $noAjax = false; } $smarty->assign('noAjax',$noAjax); if(isset($_GET['t'])){ $t=$_GET['t'].'.tpl'; } else { $t = 'cart.tpl'; } if(isset($_POST['cmd'])) { $_SESSION['paypal'] = $_POST; //print_r($_POST); } if(isset($_POST['rec_houseA1'])){ $filename = time().'-'.rand(1,499); $paypal = $_SESSION['paypal']; unset($paypal['checkout_x']); unset($paypal['checkout_y']); $_SESSION['addresses'] = $_POST; $File = 'sales/'.$filename.'.php'; $Handle = fopen($File, 'x'); fwrite($Handle,'<? '); fwrite($Handle,'$cart = array('); foreach($cartBox as $k=>$v){ fwrite($Handle,'"'.$k.'"=>array('); foreach($v as $key=>$value){ if(is_object($value)){ fwrite($Handle,'"'.$key.'"=>(object)array('); foreach($value as $keys=>$values){ if(is_array($values)){ fwrite($Handle,'"'.$keys.'"=>array('); foreach($values as $keyd=>$valued){ fwrite($Handle, '"'.$keyd.'"=>"'.$valued.'",'); } fwrite($Handle,'""=>""),'); }else{ fwrite($Handle, '"'.$keys.'"=>"'.$values.'",'); } } fwrite($Handle,'""=>""),'); }else{fwrite($Handle, '"'.$key.'"=>"'.$value.'",');} } fwrite($Handle,'""=>""),'); } //$total += $_POST['shipping']; fwrite($Handle,'"total"=>"'.$total.'");'); fwrite($Handle,' '); fwrite($Handle,'$detail = array('); foreach($_POST as $k=>$v){ if(is_array($v)){ fwrite($Handle,'array('); foreach($v as $key=>$value){ if(is_array($value)){ fwrite($Handle,'array('); foreach($value as $keys=>$values){ fwrite($Handle, '"'.$keys.'"=>"'.$values.'",'); } fwrite($Handle,')'); }else{fwrite($Handle, '"'.$key.'"=>"'.$value.'",');} } fwrite($Handle,')'); }else{ fwrite($Handle, '"'.$k.'"=>"'.$v.'",'); } } fwrite($Handle,'""=>"");'); fwrite($Handle,' '); fwrite($Handle,'$paypal = array('); foreach($paypal as $k=>$v){ if(is_array($v)){ fwrite($Handle,'array('); foreach($v as $key=>$value){ if(is_array($value)){ fwrite($Handle,'array('); foreach($value as $keys=>$values){ fwrite($Handle, '"'.$keys.'"=>"'.$values.'",'); } fwrite($Handle,')'); }else{fwrite($Handle, '"'.$key.'"=>"'.$value.'",');} } fwrite($Handle,')'); }else{ fwrite($Handle, '"'.$k.'"=>"'.$v.'",'); } } fwrite($Handle,'""=>"");'); fwrite($Handle,' '); fwrite($Handle,'$shipping = "'.$shipping.'"; '); fwrite($Handle,'$subtotal = "'.$total.'"; '); $totals = $total+$shipping; fwrite($Handle,'$totals = "'.$totals.'";'); fclose($Handle); $smarty->assign('filename',$filename); $smarty->assign('shipping',$shipping); $smarty->assign('paypal',$paypal); //print_r($paypal); $smarty->display('paypal.tpl'); }else{ $smarty->assign('total',$total+$shipping); $smarty->assign('itemsInBox',$count); $smarty->assign('cartBox',$cartBox); $smarty->assign('shipping',$shipping); $style = $db->select("SELECT * FROM styles WHERE `name`='default'"); $smarty->assign('style',$style); $smarty->display($t); } ?> <?php $con = mysql_connect("organicgrowshopcouk.fatcowmysql.com","worm","*******"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("ogs_mailinglist1", $con); $sql="INSERT INTO mailinglist (email) VALUES ('$_POST[rec_email]')"; if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } mysql_close($con); ?> The error is "Error: Duplicate entry '' for key 'usr'" I don't have any fields with that name. here is the process code. <?php $con = mysql_connect("localhost","uname","pw") or die('Could not connect: ' . mysql_error()); mysql_select_db("db") or die(mysql_error()); $FirstName=mysql_real_escape_string($_POST['FirstName']); //This value has to be the same as in the HTML form file $LastName=mysql_real_escape_string($_POST['LastName']); //This value has to be the same as in the HTML form file $UserName=mysql_real_escape_string($_POST['UserName']); //This value has to be the same as in the HTML form file $Password= md5($_POST['Password']); //This value has to be the same as in the HTML form file $email=mysql_real_escape_string($_POST['email']); //This value has to be the same as in the HTML form file $Zip=mysql_real_escape_string($_POST['Zip']); //This value has to be the same as in the HTML form file $Birthday=mysql_real_escape_string($_POST['Birthday']); //This value has to be the same as in the HTML form file $Security=mysql_real_escape_string($_POST['Security']); //This value has to be the same as in the HTML form file /* * Specify the field names that are in the form. This is meant * for security so that someone can't send whatever they want * to the form. */ $allowedFields = array( 'FirstName', 'LastName', 'UserName', 'Password', 'email', 'Birthday', 'Zip', 'Security', ); // Specify the field names that you want to require... $requiredFields = array( 'FirstName', 'LastName', 'UserName', 'Password', 'email', 'Birthday', 'Zip', 'Security', ); $errors = array(); foreach($_POST AS $key => $value) { // first need to make sure this is an allowed field if(in_array($key, $allowedFields)) { $$key = $value; // is this a required field? if(in_array($key, $requiredFields) && $value == '') { $errors[] = "The field $key is required."; } } } // were there any errors? if(count($errors) > 0) { $errorString = '<p>There was an error processing the form.</p>'; $errorString .= '<ul>'; foreach($errors as $error) { $errorString .= "<li>$error</li>"; } $errorString .= '</ul>'; // display the previous form include 'index.php'; } else { $sql="INSERT INTO Profile (`FirstName`,`LastName`,`Username`,`Password`,`email`,`Zip`,`Birthday`,`Security`) VALUES ('$FirstName','$LastName','$UserName','$Password','$email','$Zip','$Birthday','$Security')"; if (!mysql_query($sql,$con)) { die('Error: ' . mysql_error()); } //send email mail('email@gmail.com','A profile has been submitted!',$FirstName.' has submitted their profile',$body); // display the thank you page header("Location: thanks.html"); } Below is my code... it writes to the SQL database but does not show on the HTML page. Any advice? Code: [Select] <?php $query = mysql_query("SELECT * FROM `entries`"); $query = mysql_query("SELECT *, UNIX_TIMESTAMP(`date`) as date FROM `entries` ORDER BY `date` DESC LIMIT"); ?> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td valign="top"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td valign="top" class="entrysmall" align="right">Posted on: <?php echo date("d/m/y g:i a", $row['date']); ?></td> </tr> <tr> <td valign="top"> <table width="100%" cellpadding="0" cellspacing="0" border="0"> <tr> <td valign="top" style="padding-right: 10px;"><span class="entrytitle">Name:</span></td> <td valign="bottom" width="100%"><?php echo htmlspecialchars(stripslashes($row['name'])); ?></td> </tr> <tr> <td valign="top" style="padding-right: 10px;" nowrap="nowrap"><span class="entrytitle">E-Mail:</span></td> <td valign="bottom" width="100%"><?php $email = explode('@',stripslashes($row['email'])); echo $email[0].' *at* '.$email[1]; ?></td> </tr> <td valign="top" style="padding-right: 10px;"><span class="entrytitle">Hometown:</span></td> <td valign="bottom" width="100%"><?php echo htmlspecialchars(stripslashes($row['hometown'])); ?></td> <tr> <td valign="top" style="padding: 5px 10px 0px 0px;" colspan="2"><span class="entrytitle">Message:</span></td> </tr> <tr> <td valign="top" style="padding-right: 10px;" colspan="2"><?php echo smilies(htmlspecialchars(stripslashes($row['message']))); ?></td> </tr> </table> </td> </tr> </table> </td> </tr> <tr> <td valign="top" height="10"></td> </tr> </table> Whenever I see a PHP website (and given ftp access) I often struggle to find the entry page. Most I see don't have index.php in the public_html directory - or that isn't the main entry page. Htaccess and adding Wordpress, shopping carts etc. also messes around with which file is the entry page. Is there a quick checklist of what a simpleton should do to find the entry page? E.g. (1) Check .htaccess................ etc. Hi All, I was wondering if there is any way that a PHP page can update itself when a row in a DB is added or updated? I am trying to get a feed up and running and want it to update when a row is updated/inserted. Thanks Matt Hi, I was just trying to post form data to MySQL and trying to also post value of logged in user? but that code below doesnt work..Do you see a typo? or is it done some other way?
$uid =$_SESSION[ "uid" ]; $sql = "INSERT INTO Date (uid) VALUES (:uid)"; $query= $conn->prepare( $sql ); $query->execute( array( ':uid'=>$uid) );
$value0 = $_POST['date1']; $value1 = $_POST['date2']; $value2 = $_POST['date3']; $sql = "INSERT INTO Datetable (startdate,enddate, total) VALUES ('$value0','$value1', '$value2')" ; $result = mysqli_query($sql); Hi, I was wondering is it possible to not insert values in MySQL if form entry is left blank? Right now if I dont enter any values in form for my dates than MySQL entry shows 0000-00-00 but I need it not to show anything.
Hello dear friends, I've very annoying problem my website is for child drawing (draw.php) after child do drawing will click on submit (form) by sending it to another page (thanks.php) | | | | data will be submitted to database and gives message saying ( thank you for ...blah blah blah) here is the problem if he refresh the page , it will also add entry to the database so imagine if someone did many many refresh, i will get many many empty entry into database how to stop this ? here is simple code based on this problem Code: [Select] <form name="frm" method="post" action="thanks.php"> <input type="text" name="name" id="name" value=""> <input type="text" name="email" id="email" value=""> <button type="submit">Submit</button> </form> and the (thanks.php) file code *assume we have connection to db Code: [Select] $sql = "INSERT INTO $table (name, email) VALUES ('$name', '$email')"; mysql_query($sql, $conn) or die(mysql_error()); echo "Thank you kid..nice drawing"; now my problem if (thanks.php) got refreshed it will also will add empty entry to database can anyone please help me how to stop it. Alright, wasn't quite sure how to summarize this in the title, but I want to: Check if a user status is "active" or not based on the UserName input. I have a table witch holds: Code: [Select] VarChar Username Var CharPassWord int Active Ted TedsPW 1 something like the above(assuming it formatted correctly. In my php script I will want to input a variable for Username to check for: inputUN in this example would be "Ted". $UserNameToCheck = $_GET['inputUN']; Then I want to check for that UserName in the database, if it exists, I want pull the value for the "Active" field for just that UserName and echo it. Thanks for any help. I'm looking at creating a web interface for cusotmers to enter credit card information. What is the best approach for this? Keeping in mind security of data... Maybe this last point is more a question for web server administrators, but thought I'd ask anyway. I spent several hours trying to figure this thing out. Thought I had it nailed, but still getting duplicate record entries into the MySQL DB when I do NOT want them.
Here's the plot:
People filling out the possible attendance form for a Ham Radio event *sometimes* bring a 2nd person (either a spouse or a friend). The 2nd person may, or may not, also has a Callsign which I need to put INSERT the same MySQL Callsign column. In any event, to also identify the 2nd person as coming 'with' the 1st person.
MOST of the attendees are individuals with NO 2nd person.
My entry form has these primary fields:
callsign
fullname
AND...
callsign2
fullname2
What I came up with was to process the MySQL INSERT for the primary callsign & fullname into their respective MySQL DB Columns (which works fine), and then........... immediately following the main Query INSERT, to do a substitution type thing depending on whether or not a form entry was made in the callsign2 field, AND/OR, the fullname2 field.
This partially works, but if there is ONLY a primary callsign and fullname in the form, I'm still getting a duplicate record entry which includes the callsign in the `with` column (which should ONLY take place IF there is a 2nd person indicated).
Confusing?
Here is what I have been wrestling with to try and accomplish the objective, and now my eyes are glazed over ;-(
// TRICKY PART HERE // If a 2nd Callsign AND a Fullname if ($callsign2 != ' ' && $fullname2 != ' ') { // Still make reference to the primary Callsign in the MySQL DB `with` column $with = $callsign; // Assignment to allow 2nd Callsign to be entered in the MySQL `callsign` column $callsign=$callsign2; $fullname=$fullname2; $sql="INSERT INTO `mytable` (`callsign`, `fullname`, `with`) VALUES ('$callsign', '$fullname', '$with')"; // If NO 2nd Callsign BUT a Fullname } elseif ($callsign2 = ' ' && $fullname2 != ' ') { // Make reference to the primary Callsign in the MySQL DB `with` column $with = $callsign; $callsign=$callsign2; $fullname=$fullname2; $sql="INSERT INTO `mytable` (`callsign`, `fullname`, `with`) VALUES ('$callsign', '$fullname', '$with')"; } else { // The only thing I could thing of to (hopefully) NOT make a 2nd entry // record in the MySQL DB IF there is NO 2nd person referenced $with = $callsign; } if (!mysqli_query($con,$sql)) { die('Error: ' . mysqli_error($con)); }This mostly works EXCEPT if only a single (primary) person entry. The recap the objetives: 1. If ONLY a primary/single person entry on the form: * callsign & fullname get INSERTed into the `callsign` and `fullname` columns in the DB as ONLY one record entry 2. If BOTH a primary and 2nd person on the form: A. IF the 2nd person has a Callsign, then the 2nd record entry would be: * callsign2 & fullname2 get INSERTed into the `callsign` & `fullname` columns in the 2nd DB as a separate record entry * callsign of the primary person also gets INSERTED into the `with` column in the same 2nd DB record entry B. IF the 2nd person does NOT have a callsign, then the 2nd record entry would be: * fullname2 gets INSERTed into the `fullname` column in the DB as a separate 2nd DB record entry * callsign of the primary person also gets INSERTED into the `with` column in the same 2nd DB record entry I obvioiusly have overlooked something, but just can't seem to figure it out at this point {SIGH}. Thanks for any enlightenment. -FreakingOUT Hello,
I've tried to get a dynamic table from an external page, and searching for entries in it, so i used a dynamic XLS file using php excel reader. I only exported the file, but i couldn't search for data.
Can i get some help please ?
I am using php to upload a file to my server, and at the same time inserting the files name and url into my mysql database.
$sql = "UPDATE uploads SET name = '$name', url='$target_path'"; $statement = $dbh->prepare($sql); $statement->execute();This is working, however, when I upload a new file, rather than making a new entry in my database, it just overwrites the first one. I'm quite new at mysql so was wondering how I would make it add new entrys instead of overwriting the current one? Guys: What is the way to remove white spaces in front of a form entry ? Should I use regular expression for this ? Thanks. I am trying to set up a item entry page form.png: Upon submission it shows unsuccessful even though I have checked the fields on mysql table and seem to be good am I missing something? Code: [Select] <form action="" method="post" enctype="multipart/form-data" name="Product_Entry"> <TABLE> <TR> <TD>Product ID</TD><TD><input name="SKU_ProductID" value="<?php if (isset($_post['SKU_ProductID'])) echo $_POST['SKU_ProductID']; ?>" type="text" size="11" maxlength="11" /></TD> </TR> <TR> <TD>Merchant SKU ID</TD><TD><input name="SKU_MerchSKUID" value="<?php if (isset($_post['SKU_MerchSKUID'])) echo $_POST['SKU_MerchSKUID']; ?>" type="text" size="18" maxlength="30" /></TD> </TR> <TR> <TD>Game Title</TD><TD><input name="Game_Title" value="<?php if (isset($_post['Game_Title'])) echo $_POST['Game_Title']; ?>" type="text" size="40" maxlength="40" /></TD> </TR> <TR> <TD>Platform</TD><TD><input name="Platform" value="<?php if (isset($_post['Platform'])) echo $_POST['Platform']; ?>" type="text" size="20" maxlength="20" /></TD> </TR> <TR> <TD>Genre</TD><TD><input name="Genre" value="<?php if (isset($_post['Genre'])) echo $_POST['Genre']; ?>" type="text" size="11" maxlength="11" /></TD> </TR> <TR> <TD>Weight</TD><TD><input name="Weight" value="<?php if (isset($_post['Weight'])) echo $_POST['Weight']; ?>" type="text" size="7" maxlength="7" /></TD> </TR> <TR> <TD>Supplier</TD><TD><input name="Supplier" Value="<?php if (isset($_post['Supplier'])) echo $_POST['Supplier']; ?>" type="text" size="25" maxlength="25" /></TD> </TR> <TR> <TD>Suppliers Price</TD><TD><input name="Supplier_Price" value="<?php if (isset($_post['Supplier_Price'])) echo $_POST['Supplier_Price']; ?>" type="text" size="10" maxlength="12" /></TD> </TR> <TR> <TD>Cashback</TD><TD><input name="Cashback" value="<?php if (isset($_post['Cashback'])) echo $_POST['Cashback']; ?>" type="text" size="6" maxlength="8" /></TD> </TR> <TR> <TD>Cashback Amount</TD><TD><input name="Cashback_Amount" value="<?php if (isset($_post['Cashback_Amount'])) echo $_POST['Cashback_Amount']; ?>" type="text" size="7" maxlength="11" /></TD> </TR> <TR> <TD><input type="hidden" name="submitted" value="true"/></TD><TD><input name="Submit" type="submit" value="Add_Product" /></TD> </TR></form></TABLE> <?php # Product Entry $page_title = 'Product Entry'; if (isset($_POST['Submit'])) { $errors = array(); if (empty($_POST['SKU_ProductID'])) { $errors[] = 'Please enter Product ID.'; } else { $sid = trim($_POST['SKU_ProductID']); } if (empty($_POST['SKU_MerchSKUID'])) { $errors[] = 'Please enter Merchant SKU.'; } else { $mid = trim($_POST['SKU_MerchSKUID']); } if (empty($_POST['Game_Title'])) { $errors[] = 'Please enter Game Title.'; } else { $gt = trim($_POST['Game_Title']); } if (empty($_POST['Platform'])) { $errors[] = 'Please enter Platform.'; } else { $pl = trim($_POST['Platform']); } if (empty($_POST['Genre'])) { $errors[] = 'Please enter Genre.'; } else { $ge = trim($_POST['Genre']); } if (empty($_POST['Weight'])) { $errors[] = 'Please enter Weight.'; } else { $we = trim($_POST['Weight']); } if (empty($_POST['Supplier'])) { $errors[] = 'Please enter Supplier.'; } else { $sup = trim($_POST['Supplier']); } if (empty($_POST['Supplier_Price'])) { $errors[] = 'Please enter Supplier Price.'; } else { $sp = trim($_POST['Supplier_Price']); } if (empty($_POST['Cashback'])) { $errors[] = 'Please enter Cashback %.'; } else { $cb = trim($_POST['Cashback']); } if (empty($_POST['Cashback_Amount'])) { $errors[] = 'Please enter Cashback Amount.'; } else { $cba = trim($_POST['Cashback_Amount']); } if (empty($errors)) { require_once ('connect.php'); [b]$q = "INSERT INTO `Products` (`SKU_ProductID`, `SKU_MerchSKUID`, `Game_Title`, `Platform`, `Genre`, `Weight`, `Supplier`, `Supplier_Price`, `Cashback`, `Cashback_Amount`) VALUES ('$sid', '$mid', '$gt', '$pl', '$ge', '$we', '$sup', '$sp', '$cb', '$cba')"; $r = @mysql_query ($dbc, $q); if ($r) { // If it ran OK. // Print a message: echo '<h1>Thank you!</h1> <p>Product Inserted!</p><p><br /></p>'; } else { // If it did not run OK. // Public message: echo '<h1>System Error</h1> <p class="error">You could not be registered due to a system error. We apologize for any inconvenience.</p>'; // Debugging message: echo '<p>' . mysqli_error($dbc) . '<br /><br />Query: ' . $q . '</p>'; } // End of if ($r) IF. mysqli_close($dbc); // Close the database connection.[/b] // Include the footer and quit the script: include ('includes/footer.html'); exit(); } else { echo '<H1>Error!</H1> <p class="error">The Following error(s) occurred:<br />'; foreach ($errors as $msg) { echo " - $msg<br />\n"; } echo '</p><p>Please try again.</p><p><br /></p>'; } } ?> If there is anything else needed let me know I am working on a register script for my site that will give errors when needed. I am trying to make it so that if the submitted username doesn't equal [A-Za-z0-9-\s]{3,25} then it'll make $error1 = 1. if(preg_match('/[A-Za-z0-9-\s]{3,25}/i', $_POST['username'], $matches) && strlen($matches[0]) === strlen($_POST['username'])){ $error1 = 1; } I've tried putting a ! where the three equal signs are, replaced them, and everything. Say I have an "Entries" table. I want to submit same multiple entries using a form submission. And If I have other queries submitted in the same form, I want those quarries to be submitted only once. Is that possible to do? Here's my code. if(isset($_POST['submit'])) { $entries = 10; $id = 55; $name = 'Smith'; $insert = $db->prepare("INSERT INTO entries(id, name) VALUES(:id, :name)"); $insert->bindParam(':id', $id); $insert->bindParam(':name', $name); $result_insert = $insert->execute(); if($result_insert == false) { echo 'Fail'; } else { echo 'Success'; } } ?> <form action="" method="post"> <input type="submit" name="submit" value="SUBMIT" /> </form> Edited January 13, 2019 by imgrooot |