PHP mysql doet niet wat ik wil!

Status
Niet open voor verdere reacties.

timboiscool

Gebruiker
Lid geworden
27 nov 2008
Berichten
205
Hallo.

Ik ben bezig met een soort webshop die alleen data opslaat in mysql maar je moet dus een code invoeren die hij ontvangt van de mysql table en daarnaast staat de naam dus als je bijvoorbeeld 1992 invoer en daarnaast staat de naam Tim dan zou er als output Tim moeten komen maar dat doet hij niet D: hier is de code:

PHP:
<?php

mysql_connect("localhost", "root", "root") or
    die("Could not connect: " . mysql_error());
mysql_select_db("littlebox");

error_reporting(0);

$extract = mysql_query("SELECT name FROM codes WHERE seccode='$seccode'") or die(mysql_error());
$numrows = mysql_num_rows($extract);
$row = mysql_fetch_assoc($extract);
$name = $row['name'];

$seccode = $_POST['hseccode'];
$rum = $_POST['amountr'];
$citroen = $_POST['amountc'];
$sinasappel = $_POST['amounts'];
$bitterkoek = $_POST['amountb'];

if(isset($_POST['Submit1'])){
if($numrows == 0){
echo "verkeerde code";

}else{
echo "Goede code, bedankt $name";

}
}
?>
 
dus als ik het goed begrijp krijg je als je de code draait op het scherm "verkeerde code" te zien.

wat me wel opvalt is dat je $seccode pas na de query aanmaakt met de $_post waarde

en de waarde $seccode gebruik je in de query. lijkt me dat je die voor de query moet declaren
 
Laatst bewerkt:
dus als ik het goed begrijp krijg je als je de code draait op het scherm "verkeerde code" te zien.

wat me wel opvalt is dat je $seccode pas na de query aanmaakt met de $_post waarde

en de waarde $seccode gebruik je in de query. lijkt me dat je die voor de query moet declaren

SUPER ERG BEDANKT!

Nu je het heb gezegd valt het me pas op en vindt ik het heel stom van mezelf XD
 
Nu nog even
PHP:
$seccode = $_POST['hseccode'];
veranderen in
PHP:
$seccode = mysql_real_escape_string($_POST['hseccode']);
om de SQL-injectie die nu mogelijk is te verhelpen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan