login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Waarde van cookie leeg in query

Offline Duikboot - 20/05/2005 23:01 (laatste wijziging 23/05/2005 18:48)
Avatar van DuikbootGrafische gevorderde Hey,

Kom ik weer met m'n cookies. Als ik een waarde van een cookie echo gaat dat gewoon goed. Maar wanneer ik die in een query ga zetten gaat het fout. De waarde word volgens mij om een of andere reden niet geplaatst (in dit geval een lidnr). Ik heb al veel dingen geprobeerd maar word er nu toch echt moe van. Wie weet wat ik fout doe?

  1. <?
  2.  
  3. include "includes/header.php";
  4. include "config.php";
  5.  
  6. if(isset($_COOKIE['lidnr'])){
  7. $lidnummer = $_COOKIE['lidnr'];
  8.  
  9.  
  10. $query = mysql_query("SELECT wachtwoord, lidnr FROM mdleden WHERE lidnr = $lidnummer");
  11. $result2 = mysql_fetch_array($query) or die ("FOUT: " . mysql_error());
  12.  
  13.  
  14. if($_COOKIE['wachtwoord'] == $result2[wachtwoord]){
  15.  
  16. if(isset($_POST['submit'])){
  17.  
  18. // UPDATE query
  19. $query2="UPDATE mdleden SET
  20. email = '". $_POST['email'] . "',
  21. homepage = '". $_POST['homepage'] . "',
  22. msn = '". $_POST['msn'] . "',
  23. geslacht = '". $_POST['geslacht'] . "',
  24. favofilm = '". $_POST['favofilm'] . "'
  25. WHERE lidnr='" .$_POST['lidnr'] ."'";
  26. $resultx = mysql_query($query2) or die ("FOUT: " . mysql_error());
  27. //als er iets fout is gebeurt dan...
  28. if ($result){
  29. echo ("Je profiel is succesvol aangepast.<br>\n");
  30.  
  31. }
  32.  
  33. }
  34. else{
  35. $lidgetal = $_COOKIE['lidnr'];
  36. $queryz = mysql_query("SELECT * FROM mdleden WHERE lidnr=$lidgetal");
  37. $resul= mysql_fetch_array($queryz);
  38. // formpje met velden neerzetten
  39. echo "<form action=\"profiel.php\" method=\"POST\">";
  40. echo "<table>";
  41. echo "<input type=\"hidden\" value=\"$lidgetal\" name=\"lidnr\">";
  42. echo "<tr><td>E-mail:</td><td><input type=\"text\" value=\"$resul[email]\" name=\"email\"></td></tr>";
  43. echo "<tr><td>Homepage:</td><td><input type=\"text\" value=\"$resul[homepage]\" name=\"homepage\"></td></tr>";
  44. echo "<tr><td>MSN:</td><td><input type=\"text\" value=\"$resul[msn]\" name=\"msn\"></td></tr>";
  45. echo "<tr><td>Geslacht:</td><td><input type=\"text\" value=\"$resul[geslacht]\" name=\"geslacht\"></td></tr>";
  46. echo "<tr><td>Favoriete films:</td><td><input type=\"text\" value=\"$resul[favofilm]\" name=\"favofilm\"></td></tr>";
  47. echo "<tr><td></td><td><input type=\"submit\" name=\"submit\" value=\"Wijzigingen opslaan\"></td></tr>";
  48. echo "</table>";
  49. echo "</form>";
  50. include "includes/footer.php";
  51. }
  52. }
  53. else{
  54. echo "Je kunt alleen je eigen profiel aanpassen.";
  55. }
  56. }
  57. else{
  58. echo "Je bent niet ingelogged en kunt daarom ook niet je profiel aanpassen.";
  59. }
  60. include "includes/footer.php";
  61. ?>


code voor het laatst geupdate om: 18.49 (23 mei)

11 antwoorden

Gesponsorde links
Offline ikkedikke - 21/05/2005 00:00
Avatar van ikkedikke PHP expert in je query zoek je naar een LIDNR wat hetzelfde is als in de cookie, even later zet je er onder het lidnr van de cookie en het lidnr van de database, dat moet gewoon hetzlefde zijn of ?

verder zou ik die ob_start() boven je header zetten...

en geeftie verder nog errors?
Offline TFOL - 21/05/2005 00:13
Avatar van TFOL PHP beginner gaan we weer (je bent wel hardleers hè:p )

error_reporting(E_ALL); bovenaan

en op regel 32 moetje lidnr=$lidgetal veranderen in lidnr='".$lidgetal."'

Grtn van een wel bekende van je
Offline Duikboot - 21/05/2005 15:23 (laatste wijziging 21/05/2005 15:28)
Avatar van Duikboot Grafische gevorderde Hardleers.... jij bent zeker de leukste thuis. (flikker trouwens eens op je je report_all... denk je dat ik die er niet ik heb staan makker ). Ik zal ob_start er eens in stampen, kijken of dat werkt. Mocht ik nog errors tegenkomen dan geef ik ze.

EDIT: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/v4/public_html/profiel.php on line 8
Cookienr: 1
Lidnr in DB: Je kunt alleen je eigen profiel aanpassen.

Die error krijg ik, met ob_start(); bovenaan... Ik zal eens kijken of error_reporting(E_ALL); nog wat te melden heeft...
Offline Rens - 21/05/2005 15:27
Avatar van Rens Gouden medaille

Crew algemeen
Gebruik error handling.
Misschien zit er een fout in je query/database structuur.

  1. $query = "SELECT * FROM mdleden WHERE lidnr = '".$_COOKIE['lidnr']."'";
  2. if(!$rResult = MySQL_Query($query))
  3. {
  4. echo "Error!- Kan de query niet uitvoeren!<BR>";
  5. } else
  6. {
  7. // uitgevoerd, de rest van je code
  8. }
Offline Legolas - 21/05/2005 15:29
Avatar van Legolas Onbekend lidnr = '".$_COOKIE['lidnr']."'
dat hoeft niet, die enkele quotes moeten weg want het is een INTEGER. verder snap ik ook niet waarvoor MySQL_Errno dient?:s
Offline Rens - 21/05/2005 15:31
Avatar van Rens Gouden medaille

Crew algemeen
Geeft het nummer van de mysql fout.
Is soms handig om te zoeken op mysql.com naar meer informatie over de fout als je de fout niet helemaal snapt (vind ik zelf dan, hij hoeft er niet bij, maar ik zet hem er standaard bij...:) )
Offline Duikboot - 21/05/2005 15:37 (laatste wijziging 23/05/2005 18:21)
Avatar van Duikboot Grafische gevorderde Ik vind het leuk dat jullie zo fanatiek zijn, maar ik word er helaas niet echt wijzer van. 

EDIT: Code update, ik ben er nogsteeds niet uit. Ik krijg de volgende errors:

Notice: Undefined variable: sql in /home/v4/public_html/profiel.php on line 12

Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/v4/public_html/profiel.php on line 12

Notice: Use of undefined constant wachtwoord - assumed 'wachtwoord' in /home/v4/public_html/profiel.php on line 18
Je kunt alleen je eigen profiel aanpassen.
Offline Legolas - 23/05/2005 18:37
Avatar van Legolas Onbekend Die MySQL fetch row warning zal waarschijnlijk hierover zijn:
Je fetcht wel, maar er zijn geen gegevens, dus geeft hij een warning. Dat heb ik ook. Controleer dat dus met mysql_num_rows
Offline Duikboot - 23/05/2005 18:42
Avatar van Duikboot Grafische gevorderde Weetik, er zit op de een of andere manier geen waarde in de var. Als ik de cookie echo zie ik wel de waarde van de cookie, maar als ik de waarde van de cookie in een var zet, en die in mijn query zet, zit er op de een of andere manier geen waarde aan (tenminste, dat vermoed ik...)
Offline Legolas - 23/05/2005 18:43
Avatar van Legolas Onbekend probeer dan eens mysql_error() en mysql_errno()
?
Offline Duikboot - 23/05/2005 18:50 (laatste wijziging 23/05/2005 18:52)
Avatar van Duikboot Grafische gevorderde Ik heb het voor elkaar.

Ik had:
  1. <?
  2. $query = mysql_query("SELECT wachtwoord, lidnr FROM mdleden WHERE lidnr = $lidnummer"); // fetch($sql) moest fetch($query) zijn
  3. $result2 = mysql_fetch_array($sql) or die ("FOUT: " . mysql_error());
  4.  
  5. ?>


ipv
  1. <?
  2. $query = mysql_query("SELECT wachtwoord, lidnr FROM mdleden WHERE lidnr = $lidnummer");
  3. $result2 = mysql_fetch_array($query) or die ("FOUT: " . mysql_error());
  4. ?>


Maar nu heb ik weer een ander probleem. Bij een succesvolle aanpassing (die werkt ook) krijg ik nu geen text te zien (blijf aan de gang )

EDIT: Ook opgelost 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.201s