fout met query

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Oracle ontwikkelaar met PL/SQL en APEX in de regio

Bedrijfsomschrijving Het havengebied rondom Rotterdam biedt veel uitdagende projecten binnen o.a. container mangement, douane en warehousing. Deze organisatie biedt juist op dergelijke segmenten ICT-oplossingen van grote kwaliteit. Deze organisatie kenmerkt zich als een fullservice softwarehuis dat verantwoordelijk is voor zowel het bepalen van de informatie behoeftes bij klanten, inhouse software ontwikkeling en de implementatie van deze software. Dit doen ze inmiddels al een zeer geruime tijd voor voornamelijk klanten binnen de logistieke sector. Binnen de logistieke sector hebben ze inmiddels een imposant klantenbestand opgebouwd wat optimaal bediend wordt. Denk hierbij aan bijvoorbeeld grote vervoers/transportmaatschappijen. De organisatie is zeer goed bereikbaar

Bekijk vacature »

Rein Broekman

rein Broekman

22/03/2007 22:56:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?$query=mysql_query('INSERT INTO gebruikers (naam,ww,nivo,email) VALUES (".$_POST['user']."','".$md5pass."',0,'".$_POST['email']"');?>

kan iemand mij vertellen wat hier fout gaat ik krijg deze foutmelding
Parse error: syntax error, unexpected T_STRING in C:\apachefriends\xampp\htdocs\ededag3\aanmelden.php on line 11
bvd
 
PHP hulp

PHP hulp

17/01/2022 02:28:17
 
Baarr

Baarr

22/03/2007 23:03:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?$query=mysql_query("INSERT INTO gebruikers (naam,ww,nivo,email) VALUES ('" .$_POST['user']. "','" . $md5pass . "',0,'" . $_POST['email'] . "');"; ?>


Quootjeswerk ;-)

Voor het gemak gebruik ik dubbele quotes om de query te beginnen omdat ik later single quotes moet zetten om waardes die tekst bevatten.

Normaliter gebruik ik voor tekst altijd single quotes omdat dat sneller is dan tekst met dubbele quotes.

Vergeet je overigens niet om je data te escapen, want deze query is rijp voor SQL injectie

dus ipv $_POST['email'] gebruik je mysql_real_escape_string($_POST['email'])

Suc6
 
Martijn Wieringa

Martijn Wieringa

22/03/2007 23:10:00
Quote Anchor link
Het highlighten van de code verraade ut al een beetje ;)
 
Rein Broekman

rein Broekman

22/03/2007 23:13:00
Quote Anchor link
mysql_real_escape_string($_POST['email']) hoeft nu nog niet omdat ik hem lokaal heb draaien maar zeker iets om niet te vergeten.
thanx
 
Frank -

Frank -

22/03/2007 23:15:00
Quote Anchor link
rein schreef op 22.03.2007 23:13:
mysql_real_escape_string($_POST['email']) hoeft nu nog niet omdat ik hem lokaal heb draaien maar zeker iets om niet te vergeten.
thanx
En dan toch om hulp vragen? Je weet dat je heel erg fout bezig bent en toch ga je domweg verder. Tja, dan moet je het ook zelf maar weten.

De foutafhandeling ontbreekt ook nog in zijn geheel, de basis van ieder script, maar ook daar zul je wel bewust voor hebben gekozen. Maar ja, waarom zou je ook een goed script maken die eenvoudig is te debuggen?

Veel succes in elk geval...
 
Baarr

Baarr

22/03/2007 23:17:00
Quote Anchor link
Rein, 1 advies, doe het in 1 keer goed, lijkt iets langer te duren, maar op het einde van het verhaal ben je minder lang bezig want dan is het ook klaar als het klaar is , snaps ;-)
 
Rein Broekman

rein Broekman

22/03/2007 23:42:00
Quote Anchor link
even ter verduidelijking ik ben bezig met een php cursus via ioc.nl.
ik moest even iets in een database stoppen om iets op te kunnen halen.
maar dat lukte niet via phpmyadmin.
dus vandaar dat ik niet zo bezig ben met fouten die mensen erin kunnen zetten.
maar misschien heb ik het fout begrepen
mysql_real_escape_string($_POST['email']) is dit iets wat van belang is als andere mensen iets in gaan voeren(dat gebeurt namelijk niet)
dus ik vul nu alleen bv in janjansen en niet janjansen@blabla.com.
als ik het fout heb hoor ik het graag
 
Frank -

Frank -

23/03/2007 00:39:00
Quote Anchor link
Quote:
mysql_real_escape_string($_POST['email']) is dit iets wat van belang is als andere mensen iets in gaan voeren
Hoezo ándere mensen? Vul jij nooit een naam als bv. in 't Huis in?

mysql_real_escape_string() is niet tegen hackers of voor domme mensen, het is om quotes te escapen. Het is dom om het niet te gebruiken. Net zoals dat het dom is om geen foutafhandeling te gebruiken. Dat zijn echt basisdingetjes.

Je had vele malen sneller een goed script geschreven dan wat je nu nodig hebt gehad om te debuggen.

Mocht je php versie 5 gebruiken, kijk dan eens naar PDO. Die neemt voor jou al het werk uit handen. Kost je 1 a 2 minuten om een voor een nieuwe database een verbinding op te zetten en op een veilige manier queries uit te voeren. Ben je ook van het gekloot met de php-mysql-functies af.
Gewijzigd op 01/01/1970 01:00:00 door Frank -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.