Desprate for some help here with edit database

Discussion in 'PHP' started by dougvcd, Aug 14, 2007.

  1. #1
    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>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <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:
     
    dougvcd, Aug 14, 2007 IP
  2. ecentricNick

    ecentricNick Peon

    Messages:
    351
    Likes Received:
    13
    Best Answers:
    0
    Trophy Points:
    0
    #2
    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'
     
    ecentricNick, Aug 14, 2007 IP
  3. dougvcd

    dougvcd Peon

    Messages:
    267
    Likes Received:
    2
    Best Answers:
    0
    Trophy Points:
    0
    #3
    all sorted now
    thanks to all
    Doug
     
    dougvcd, Aug 14, 2007 IP