login  Naam:   Wachtwoord: 
Registreer je!
 Forum

INSERT lukt ni

Offline ottorocket - 02/03/2006 15:46 (laatste wijziging 02/03/2006 15:59)
Avatar van ottorocketOnbekend kheb nu dit stukje al waar je een stationnaam kan ingeven als je er nog geen hebt, maar hij wilt het niet in de database zetten
hij geeft geen error, hij doet het gewoon niet

  1. <?php
  2. include('config.php');
  3. if(!isset($_SESSION['gebruiker'])) {
  4. header("Location: index.html");
  5. }
  6. ?>
  7. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  8. <html xmlns="http://www.w3.org/1999/xhtml">
  9. <head>
  10. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  11. <title>:: counter terrors ::</title>
  12. </head>
  13. <body>
  14. <?php
  15. $stat = mysql_query("SELECT station FROM leden WHERE gebruikersnaam = '".$_SESSION['gebruiker']."'") or die(mysql_error()); //$station is het station van het lid dat is ingelogd
  16. $station = mysql_result($stat, 0); //resultaat van de vorige lijn
  17. if($station == ""){
  18. echo"Je hebt nog geen station, hier kan je ereen maken."; //als je geen station hebt
  19. print <<< ENDHTML
  20. <form method='post'>
  21. Station: <input type='text' name='station' value='' maxlength=32>
  22. <input name="maak" type='submit' value='maak'><br>
  23. ENDHTML;
  24. if (isset($_POST['maak'])) {
  25. if ($_POST['station'] == "") {
  26. $error = "Je hebt geen station naam ingevuld.<br>";
  27. echo $error; //als er geen stationaam is ingevuld
  28. }
  29. if(!preg_match('/^[A-Za-z_-]+$/',$_POST['station'])) {
  30. $error = "Er mogen alleen letters, nummers en _ -in de clan-namen zitten.<br>";
  31. echo $error; //als er spaties of cijfers in de naam zitten
  32. }
  33. if (!isset($error)) { //als er geen error is aangemaakt
  34. echo "Uw stationnaam wordt <b>".$_POST['station']."</b>, welkom";
  35. mysql_query("INSTERT INTO leden (station) VALUES ('".$_POST['station']."') WHERE gebruikersnaam='".$_SESSION['gebruiker']."'");
  36. }}
  37. }else
  38. {
  39. echo "Je station noemt $station"; //als je wel een station hebt
  40. }
  41. ?>
  42. </body>
  43. </html>

11 antwoorden

Gesponsorde links
Offline BigBug - 02/03/2006 15:50 (laatste wijziging 02/03/2006 15:50)
Avatar van BigBug PHP expert INSTERT UPDATE leden set station=".$_POST['station']." where gebruikersnaam='".$_SESSION['gebruiker']."'");

Ten eerste zou het INSERT moeten zijn. Maar je hebt geen INSERT nodig bij updaten. Gewoon:

UPDATE leden set station='blaat' WHERE iets='iets'

Oja, en je krijgt geen error omdat je het niet in een if/else loop hebt staan of zonder or die(mysql_error());
Offline nielsvdwal - 02/03/2006 15:50
Avatar van nielsvdwal PHP gevorderde insert update?

ik zou er INSERT INTO leden van maken.. en dan nog meer foute zie ik..

  1. <?php
  2. mysql_query("INSTERT INTO leden (station) VALUES ('".$_POST['station']."') WHERE gebruikersnaam='".$_SESSION['gebruiker']."'");
  3. ?>
Offline ottorocket - 02/03/2006 15:51 (laatste wijziging 02/03/2006 15:56)
Avatar van ottorocket Onbekend kheb het verandert, maar als je dan een naam intypt en je terug refresht zou er moeten komen dat er al een station is en dat komt er niet
wat zie je dan nog meer fout?
Offline nielsvdwal - 02/03/2006 15:57
Avatar van nielsvdwal PHP gevorderde kijk in je database of het daar veranderd is.. anders ligt het aan je check of er al 1tje is..
Offline ottorocket - 02/03/2006 15:58 (laatste wijziging 02/03/2006 16:01)
Avatar van ottorocket Onbekend nee, in mijn database is het ook niet verandert

EDIT ik heb er OR DIE achtergezet en toen kreeg ik dit

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSTERT INTO leden (station) VALUES ('test') WHERE gebruikersnaam='ottorocket'' at line 1
Offline nathanael - 02/03/2006 16:38
Avatar van nathanael Gouden medaille

HTML gevorderde
Je moet wel UPDATE gebruiken, want je zet een nieuwe waarde in je db.

id | gebruiker | station
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
1 | ottorocket| weekni

UPDATE:

id | gebruiker | station
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
1 | ottorocket| weekwel
Offline ottorocket - 02/03/2006 16:43
Avatar van ottorocket Onbekend
  1. Uw stationnaam wordt test, welkomYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(station) VALUES ('test') WHERE gebruikersnaam='ottorocket'' at line 1



ik krijg nog altijd dit
Offline nathanael - 02/03/2006 16:47 (laatste wijziging 02/03/2006 16:48)
Avatar van nathanael Gouden medaille

HTML gevorderde
  1. <?php
  2. mysql_query("UPDATE leden SET station = '".$_POST['station']."' WHERE gebruikersnaam = '".$_SESSION['gebruiker']."'") or die(mysql_error());
  3. ?>
Offline ottorocket - 02/03/2006 16:49
Avatar van ottorocket Onbekend ja, die werkt, bedankt nathaneel en al de andere
Offline Joel - 03/03/2006 18:47
Avatar van Joel Eigenaar Time to learn the basics 
Offline ottorocket - 03/03/2006 18:47
Avatar van ottorocket Onbekend jah, kheb het al een beetje door
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.219s