Toon posts:

[mysql/php] UPDATE

Pagina: 1
Acties:
  • 817 views sinds 30-01-2008

Verwijderd

Topicstarter
Ik ben een beetje aan het oefenen met mysql en heb een database gemaakt voor mijn films. Uitlezen is gelukt en ook een rij verwijderen was geen probleem.

Nu ben ik echter de edit knop aan het toevoegen. Ik wil dus een rij kunnen aanpassen.
Ik heb deze code gebruikt: http://www.spoono.com/php/tutorials/tutorial.php?id=23

Het probleem: Ik heb ongeveer 350 films erin staan en als ik bijv film met id 8 wil aanpassen dan word de laatste film uit de tabel aangepast. Als ik dus de naam van film 8 verander en ik klik op submit word de naam van film 350 veranderd.

In deze code wordt voor het testen alleen ff veld Naam veranderd.
Dit is de code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<? 
    include "connect.php";
    
mysql_select_db("test"); 

if(!isset($cmd)) 
{

   $result = mysql_query("select * from Movies order by id"); 
   
   while($r=mysql_fetch_array($result)) 
   { 

      $Naam=$r["Naam"];
      $id=$r["id"];
     
      echo "<a href='edit.php?cmd=edit&id=$id'>$Naam - Edit</a>";
      echo "<br>";
    }
}
?>
<?
if($_GET["cmd"]=="edit" || $_POST["cmd"]=="edit")
{
   if (!isset($_POST["submit"]))
   {
      $id = $_GET["id"];
      $sql = "SELECT * FROM Movies WHERE id=$id";
      $result = mysql_query($sql);        
      $myrow = mysql_fetch_array($result);
      ?>
      
      <form action="edit.php" method="post">
      <input type=hidden name="id" value="<?php echo $myrow["id"] ?>">
   
      Naam:<INPUT TYPE="TEXT" NAME="Naam" VALUE="<?php echo $myrow["Naam"] ?>" SIZE=30><br>
  
      <input type="hidden" name="cmd" value="edit">
   
      <input type="submit" name="submit" value="submit">
   
      </form>
   
<? } ?>
<?
   if ($_POST["submit"])
   {
      $Naam = $_POST["Naam"];

      
      $sql = "UPDATE Movies SET Naam='$Naam' WHERE id=$id";
      $result = mysql_query($sql);
      echo "Thank you! Information updated.";
    }
}
?>

  • dB90
  • Registratie: Oktober 2004
  • Laatst online: 04-10 00:10
PHP:
1
2
3
4
5
6
7
8
9
   if ($_POST["submit"]) 
   { 
      $Naam = $_POST["Naam"]; 
    -->  $id = $_POST['id']; <--
       
      $sql = "UPDATE Movies SET Naam='$Naam' WHERE id=$id"; 
      $result = mysql_query($sql); 
      echo "Thank you! Information updated."; 
    }


En als je dat toevoegt?

Webberry Webdevelopment


Verwijderd

Topicstarter
dB90 schreef op dinsdag 05 juni 2007 @ 23:33:
PHP:
1
2
3
4
5
6
7
8
9
   if ($_POST["submit"]) 
   { 
      $Naam = $_POST["Naam"]; 
    -->  $id = $_POST['id']; <--
       
      $sql = "UPDATE Movies SET Naam='$Naam' WHERE id=$id"; 
      $result = mysql_query($sql); 
      echo "Thank you! Information updated."; 
    }


En als je dat toevoegt?
Dan werkt het :)

Bedankt.

  • dB90
  • Registratie: Oktober 2004
  • Laatst online: 04-10 00:10
graag gedaan :+

Webberry Webdevelopment


  • Blaise
  • Registratie: Juni 2001
  • Niet online
Als magic_quotes uitstaan is dit script onveilig en kan je database worden gehacked met SQL Injection. Escape je $_POST variabelen daarom voordat je ze gebruikt. Dat kan met mysql_real_escape_string().

[ Voor 3% gewijzigd door Blaise op 06-06-2007 03:25 ]


  • dusty
  • Registratie: Mei 2000
  • Laatst online: 25-11 22:57

dusty

Celebrate Life!

Mooi dat het is opgelost, echter is dit nog steeds standaard debug werk, en volgens de FAQ hoort dat hier niet thuis.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR

Pagina: 1

Dit topic is gesloten.