login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in

Offline betterdays - 16/08/2010 14:30
Avatar van betterdaysLid Deze foutcodes krijg ik op mijn website:

Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in /home/usr1/betterdays/public_html/_include.php on line 38

Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in /home/usr1/betterdays/public_html/_include.php on line 64

Het rare is dat alles perfect werkte tot een bepaald moment deze codes tevoorschijn kwamen. Ik heb ook geen array staan in men _include file en ben weer wanhopig aan het zoeken. Op het internet vind ik allerlei rare dingen terug die totaal niet toepasbaar zijn op mijn situatie

Hier staat mijn _inculde file: http://www.plaatscode.be/139848/

Hier kan je de volledige website terugvinden: http://www.gpt-info.be

Hopelijk kunnen jullie mij helpen.

16 antwoorden

Gesponsorde links
Offline vinTage - 16/08/2010 14:36 (laatste wijziging 16/08/2010 14:39)
Avatar van vinTage Nieuw lid De session zal nog niet gevuld zijn ? (dus leeg en dat mag niet van mysql_real_escape_string)

edit: ah foutmelding fout gelezen, 4give me 
Offline urqbz - 16/08/2010 14:36
Avatar van urqbz PHP interesse Volgens de foutmelding gebruik je een array waar een string wordt verwacht in je query.
Doe eens na lijn 38:
  1. <?php // kleur
  2. print mysql_real_escape_string($_SESSION['user']);
  3. ?>


of probeer eens:
  1. <?php // kleur
  2. $excaped = mysql_real_escape_string($_SESSION['user']);
  3. $query = mysql_query("SELECT pass FROM users WHERE user = '".$escaped."'");
  4. ?>
Offline betterdays - 16/08/2010 14:48
Avatar van betterdays Lid Beide codes werken spijtig genoeg niet
Offline urqbz - 16/08/2010 14:57
Avatar van urqbz PHP interesse Nee, maar wat is het resultaat van de eerste?
Offline betterdays - 16/08/2010 15:05
Avatar van betterdays Lid Deze geeft de foutmelding:

Warning: mysql_real_escape_string() expects parameter 1 to be string, array given in /home/usr1/betterdays/public_html/_include.php on line 39

Dezelfde dus als de andere ;)
Offline urqbz - 16/08/2010 15:17
Avatar van urqbz PHP interesse Ik vraag: wat print ie als je die sessie print...
Offline betterdays - 16/08/2010 15:21
Avatar van betterdays Lid Hij print die erorcode. Klinkt misschien raar maar toch is het zo.
Offline urqbz - 16/08/2010 15:28
Avatar van urqbz PHP interesse Nee, dat is niet zo. Zet even # voor de query en de fetch regel en print de sessie nogmaals.
Offline betterdays - 16/08/2010 15:49
Avatar van betterdays Lid Het lukte niet en heb het afgekort naar dit: print $_SESSION['user'];

Dan geeft hij array weer.
Offline urqbz - 16/08/2010 15:54 (laatste wijziging 16/08/2010 15:54)
Avatar van urqbz PHP interesse Ja, dat is dus het probleem, een query wil daar een string, geen array. Je moet het denk ik even PHP.net: foreach 'en

Kijk daar eens naar.
Offline betterdays - 16/08/2010 16:55
Avatar van betterdays Lid Het heeft iets te maken met mijn $_SESSION['user'].
Want als ik inlog geeft hij geen foutmelding. Ik kan dan ook alles doen op de website zonder probleem.

Het is enkel als ik een user zijn gegevens zelf zou laten aanpassen dat alles flipt en die error tevoorschijnkomt. Dus volgens mij verloopt de session user dan gewoon ofzo.

Is raar en zou niet weten waardoor dit komt.

Bedankt voor de hulp! Moest iemand nog een ideetje hebben hoe dit komt hoor ik het wel.
Offline urqbz - 16/08/2010 17:10
Avatar van urqbz PHP interesse Probeer eens de query niet uit te voeren als de sessie user leeg is.
  1. <?php
  2. if (!empty($_SESSION["jesessie"]))
  3. {
  4. // je query
  5. }
  6. else
  7. {
  8. print "Je bent niet ingelogd";
  9. }
  10. ?>
Offline betterdays - 16/08/2010 17:39
Avatar van betterdays Lid Dit wordt al gecontroleerd via de fuctie check_login()
Zie hieronder:

  1. function check_login()
  2. {
  3. if(empty($_SESSION['user']) || empty($_SESSION['ip']))
  4. {
  5. echo 'U bent niet ingelogd. ';
  6. echo "<a href='/inloggen.php'>Klik hier</a> om in te loggen";
  7. die();
  8. }
  9.  
  10. if($_SESSION['ip'] != $_SERVER['REMOTE_ADDR'])
  11. {
  12. echo 'U bent niet ingelogd. ';
  13. echo "<a href='/inloggen.php'>Klik hier</a> om in te loggen";
  14. die();
  15. }
  16.  
  17. $query = mysql_query("SELECT 1 FROM users WHERE user = '".mysql_real_escape_string($_SESSION['user'])."'");
  18.  
  19. if(mysql_num_rows($query) == 0)
  20. {
  21. echo 'U bent niet ingelogd. ';
  22. echo "<a href='/inloggen.php'>Klik hier</a> om in te loggen";
  23. die();
  24. }
  25. }



Het zit hem echt in die kleine dingen. Ik zou gewoon moeten weten waarom die $_SESSION['user'] soms ineens een array wordt. Heb iets te weinig kennis om dit te weten wat zeer noodzakelijk is bij deze soort scripten.
Offline urqbz - 16/08/2010 18:29
Avatar van urqbz PHP interesse Wanneer werd het een array dan? Wat heb je gedaan?
Anders kun je misschien de functie PHP.net: is_array() gebruiken.
Offline Martijn - 16/08/2010 19:17
Avatar van Martijn Crew PHP Blijkbaar is $_SESSION['user'] een array. Lijkt me vrij simpel, dus dan moet je nu gaan zoeken waarom ie dat ziet als een array, want dat gebeurd niet zomaar
Offline betterdays - 16/08/2010 21:14
Avatar van betterdays Lid Tsja makkelijker gezegd dan gedaan. Ga me er deze week nog eens in verdiepen. Ga eerst de rest van de website afmaken .

Bedankt aan iedereen die moeite gedaan heeft om me te helpen!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.211s