Gegevens worden in de verkeerde regel opgeslagen.

Status
Niet open voor verdere reacties.

kevin10

Gebruiker
Lid geworden
22 jan 2008
Berichten
344
Ik ben sinds een paar dagen bezig met een inlog systeem + bestelsysteem.
nu werkt het inlog systeem perfect met sessions.
alleen het bestellen gaat niet helemaal goed als ik wat bestel dan word het in de verkeerde regel opgeslagen in de database.

ik gebruik voor het invoeren van de gegevens

PHP:
if($_POST)
{
	$sql = 'INSERT INTO `members` WHERE gebruikersnaam='$gebruikersnaam' (`mobielkeuze`, `abonnementkeuze`); VALUES (\''.mysql_real_escape_string($_POST['mobiel']).'\', \''.mysql_real_escape_string($_POST['abonnement']).'\')';
	mysql_query($sql) or die("Kan pagina niet toevoegen<hr>".mysql_error());
	{
		header('Refresh: 3; url=location:succesvol.php');
	}

nu zit er een fout in. alleen ik heb geen idee hoe de gegevens goed in te voeren.

De gebruikersnaam word opgeslagen in een session ook op deze pagina hoe kan ik dit gebruiken om het goed op te slaan?
 
Je query is heel erg raar gemaakt. Als je nieuw bent in het maken van een query, zou ik je adviseren om je er nog even iets meer in te verdiepen.

Een WHERE in een INSERT is nogal raar, want hij doet hier niks mee, dat kan je dus gewoon weglaten. Voor VALUES staat een ";", die hoort hier simpel weg niet.

Probeer deze query eens!

[sql]INSERT INTO `members` (`mobielkeuze`, `abonnementkeuze`) VALUES ('".mysql_real_escape_string($_POST['mobiel'])."','".mysql_real_escape_string($_POST['abonnement'])."')[/sql]

Als je een query gemaakt hebt, test hem dan even in PHPMyAdmin (of iets dergelijks).
 
ja ik wist dat me query niet goed in elkaar zat mijn query was eerst ook zo als die alleen slaat die het niet op in dezelfde regel als de gebruikersnaam en wachtwoord maar maakt die een nieuwe regel en blijven de velden gebruikersnaam en wachtwoord leeg.
Ik zat te denken aan de gebruikersnaam die in een session is opgeslagen die weer te gebruiken om de goeie regel aan te geven alleen ik heb dus geen idee hoe.
 
Dan moet je geen INSERT doen, maar een UPDATE
Die werkt wel anders dan een INSERT.
Bij een update werkt het als volgt:
[sql]UPDATE INTO tabelnaam SET veld1 = 'waarde1', veld2 = 'waarde2' WHERE gebruikersnaam = 'gebruikersnaam'[/sql]
 
bedankt voor je hulp :thumb:

de update werkt ook en ik had het zelf ook op een andere manier opgelost door gewoon een extra tabel toe te voegen :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan