this code should update a database but is not working can any one help thanks Doug if($_POST['action'] == "edit") { //This gets all the other information from the form $region=$_POST['region']; $name=$_POST['name']; $username=$_POST['username']; $password=$_POST['password']; $email=$_POST['email']; $contact=$_POST['contact']; $parkname=$_POST['parkname']; $county=$_POST['county']; $parklocation=$_POST['parklocation']; $caravandetails=$_POST['caravandetails']; $web=$_POST['web']; $pname=$_POST['pname']; // Connects to your Database mysql_connect("6", "c", "3") or die(mysql_error()); mysql_select_db("c") or die(mysql_error()); //Writes the information to the database mysql_query("update `members` VALUES ('$region', '$name', '$username', '$password', '$email', '$contact' , '$parkname', '$county', '$parklocation', '$caravandetails', 'web', '$avail', '$pname')"); echo "Success! Your information has been Updated. PleaseWait till you are redirected to the homepage."; echo'<meta http-equiv="REFRESH" content="2;url=index.php">'; } else { $hm = authenticate($_COOKIE[Caravan]); $hm2 = mysql_num_rows($hm); if ($hm2 > 0) { $connection = @mysql_connect("6", "c", "3") or die("Couldn't connect."); $db = @mysql_select_db("c", $connection) or die("Couldn't select database."); $sql = "SELECT * FROM members WHERE username ='$_COOKIE[Caravan]'"; $result = @mysql_query($sql,$connection) or die("Couldn't execute profile query."); $num=mysql_num_rows($result); while ($row = mysql_fetch_array($result)) { $region=$row['region']; $name=$row['name']; $username=$row['username']; $password=$row['password']; $email=$row['email']; $contact=$row['contact']; $parkname=$row['parkname']; $county=$row['county']; $parklocation=$row['parklocation']; $caravandetails=$row['caravandetails']; $web=$row['web']; $pname=$row['pname']; } ?> <script> function ValidateRequiredFields() { var FieldList = RequiredFields.split(",") var BadList = new Array(); for(var i = 0; i < FieldList.length; i++) { var s = eval('document.' + FormName + '.' + FieldList[i] + '.value'); s = StripSpacesFromEnds(s); if(s.length < 1) { BadList.push(FieldList[i]); } } if(BadList.length < 1) { return true; } var ess = new String(); if(BadList.length > 1) { ess = 's'; } var message = new String('\n\nThe following field' + ess + ' are required:\n'); for(var i = 0; i < BadList.length; i++) { message += '\n' + BadList[i]; } alert(message); return false; } function StripSpacesFromEnds(s) { while((s.indexOf(' ',0) == 0) && (s.length> 1)) { s = s.substring(1,s.length); } while((s.lastIndexOf(' ') == (s.length - 1)) && (s.length> 1)) { s = s.substring(0,(s.length - 1)); } if((s.indexOf(' ',0) == 0) && (s.length == 1)) { s = ''; } return s; } // --> </script> <form name="form" onsubmit="return ValidateRequiredFields();" action="<?echo $PHP_SELF ?>" method="POST"> <div id="info" style="width:360px;"> <div align="left"> <strong>Edit Your Listing</strong><br> <br /> <strong>Type:</strong> <select name="region" value=<? echo $region ?>> <option value="exchange">Exchange</option> <option value="hire">4 Hire</option> <option value="both">Both</option> <option value="4sale">4 Sale</option> </select> <br> <br /> <input name="name" type="text" value=<? echo $name ?>> <strong>Name:</strong> <br> <br /> <input type="text" name="username" value=<? echo $username ?>> <strong>Username:</strong> <br> <br /> <input name="password" type="password" value=<? echo $password ?>> <strong>Password:</strong> <br> <br /> <input type="text" name = "email" value=<? echo $email ?>> <strong>Email: </strong><br> <br /> <input type="text" name = "contact" value=<? echo $contact ?>> <strong>Tel Number:</strong> <br> <br /> <input type="text" name="parkname" value=<? echo $parkname ?>> <strong>Park Name:</strong> <br> <br /> <strong>Select County: </strong> <select name="county"> <Option VALUE="devon">Devon</option> <Option VALUE="cornwall">Cornwall</option> <Option VALUE="wales">Wales</option> <option value="scotland">Scotland</option> <option value="lancashire">Lancashire</option> <option value="england">England</option> <option value="other">Other</option> </select> <br> <br/> <input type="text" name="parklocation" value=<? echo $parklocation ?>> <strong>Park Location:</strong> <br> <br /> <input type="text" name="caravandetails" value=<? echo $caravandetails ?>> <strong>Caravan Details:</strong> <br> <br/> <input type="text" name="web" value=<? echo $web ?>> <strong>Web Url:</strong> <br> <br/> <input type="hidden" name="action" value="edit"></div> <input type="submit" value="Edit Details"/> </form> <? } else { echo "You must login to do that. <a href=login.php>Click here</a>"; } } ?> PHP:
Yes, your update statement is completly wrong. You can do inserts like that but not updates. The format of an update statement is... UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_condition] [ORDER BY ...] [LIMIT row_count] So, you need something like... UPDATE members set region='$region', name='$name'........ You will also need a where clause to limit which row is being updated - otherwise you're going to update every row! So probably something like.... UPDATE members set region='$region', name='$name'........... WHERE username='$username'