En dan zit het probleem hem in deze regel..
$que = "INSERT INTO tabel (users, email, pass) VALUES ('".$users."', '".$email"', '".$pass."')";
Zover was ik nog net zeg maar, Wat het probleem is is dat dit een tutorialscript is, die ik zelf probeer aan te passen. De bedoeling is dat ik een registratiesysteem bouw (geinspireerd op een werkend/bestaand script) zodat ik een tooltje kan bouwen voor mezelf die met MySQL werkt.
Wat ik graag zou willen weten, is wat deze error betekent en hoe het op te lossen is, dan ga ik daarna weer verder, en mocht ik meer tegen komen dan zou ik dat ook graag hier willen posten.
$email staat niet tussen puntjes '".$email."' denk verder om veiligheid: mysql_real_escape_string
Edit:
Was de uitleg vergeten, de error geeft het al aan hij komt een overwachte string tegen, dus eerst je variabele buiten de quotes en puntjes en dan weer verder met de rest.
Ah, ik was alle quotes al druk doorgelopen om te zien of het daar in zat, maar het puntje bij email heeft me geholpen!
Verder, kan je me wat uitleggen wat er is met mysql_real_escape_string? Is het hackbaar, niet veilig? Ik krijg hier namelijk ook error's op, nu ik het .$email. probleem gefixed heb!
Access denied for user 'apache'@'localhost' (using password: NO)
Vrij vertaald:
Toegang verboden voor gebruik 'apache@localhost' (geen wachtwoord gebruikt)
Kortom, of je gebruikersnaam of je host zijn incorrect waardoor we geen contact kunnen krijgen met de MySQL server.
Hoe komt dat? Je moet eerst connectie aanmaken en daarna pas mysql_real_escape_string gebruiken. Niet andersom.
Ook kopieer je nu onnodig variabele, dit is nergens voor nodig en kost alleen geheugen. Het is beter om gewoon de post variabele in het script te gebruiken.
En mysql_real_escape_string hackbaar? Het is juist tegen hacken, waar haal je vandaan dat het hackbaar en niet veilig is?
Zoals ik al in mijn eerste post vermelde, ik ben nieuw in de php scene, en wil juist leren hoe of het wat. En, wat er ook stond dat ik een werkend login script aan het verbouwen ben naar mn eigen wensen, maar dat wil nog niet.
Gerhard l plaatst het volgende.
"denk verder om veiligheid: mysql_real_escape_string" Komt hier over alsof het hackbaar en/of gevaarijk is, Daar haal ik het vandaan :)
Gebruikersnaam en host kloppen gewoon, want hiermee log ik ook in op phpmyadmin. Mag ik ook gewoon een loss config.inc.php pagina aanmaken en deze helemaal boven aan de sessie require_once("config.inc.php") doen?
[size=xsmall]Toevoeging op 17/03/2012 10:11:21:[/size]
Oh, heb het nu opgelost door het idd andersom te zetten.
"denk verder om veiligheid: mysql_real_escape_string" Komt hier over alsof het hackbaar en/of gevaarijk is, Daar haal ik het vandaan :)
Oh, oke. Dat is dan een misverstand, mysql_real_escape_string zorgt ervoor dat je beveiligd bent tegen SQL injecction, één van de vele hack technieken.
Nu krijg ik, die en die table bestaat niet. Er is een database, daar staan 3 table's in, users, pass, en email, en overal een column in, maar hij doet nog niets -.-
Table 'djurrbm53_troops.tabel' doesn't exist
Zometeen maar even worstelen met phpmyadmin :)