Archief - MYSQL: Fout in mysql_query

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

nickman

Legacy Member
Ik heb net een klein scriptje geschreven om gewoon simpelweg data toe te voegen aan een database, niets speciaal heel basis, maar het wil maar niet werken... :(.
Heb alles al nagezien maar niet direct iets gevonden:
PHP:
if(isset($_POST['add'])) {
	
	// Nieuwe variablen hier toevoegen !
	$datum = $HTTP_POST_VARS['datum'];
	$titel = $HTTP_POST_VARS['titel'];
	$auteur = $HTTP_POST_VARS['auteur'];
	$vertaling = $HTTP_POST_VARS['vertaling'];
	$regie = $HTTP_POST_VARS['regie'];
	$acteurs = $HTTP_POST_VARS['actuers'];
	$gastproductie = $HTTP_POST_VARS['gastproductie'];
	$inhoud = $HTTP_POST_VARS['inhoud'];
	
	$query = "INSERT INTO gloriant (datum, titel, auteur, vertaling, regie, acteurs, gastproductie, inhoud) VALUES ('$datum', '$titel', '$auteur', '$vertaling', '$regie', '$acteurs', '$gastproductie', '$inhoud')";
			
	mysql_query($query) or DIE("Insert Error!");
	
	echo "De Productie is toe gevoegd, je kan hier onder de volgende toevoegen. <br><br>";

}

Misschien kan iemand hier zien wat mijn fout is?
Alvast bedankt :)

Incinnerator

Legacy Member
zet eens die(mysql_error());

ipv DIE("Insert Error!");

dan weet je gelijk meer :)

RpR

Legacy Member
Doe ook eens een echo van $query voor hem uit te voeren dan kan je al bekijken of quotes enz wel kloppen.

killgore

Legacy Member
punt 1: gebruik $_POST ipv $HTTP_POST_VARS
punt 2: controleer op elke globale ($_POST onder andere) variabele of ze wel degelijk geset is:

Dit kan bv. zoiets zijn:
$datum = isset($_POST["datum"]) ? make_safe($_POST["datum"]) : "";

punt 3: zal hier geen probleem zijn, maar als je engelse namen gebruikt voor je mysql gegevens die wel eens mysql keywords zouden kunnen zijn (zoals bv "date"), zet er dan ` rond ;).

punt 4: als je " gebruikt voor strings dan moet je tekens als ' escapen: "dit is een enkelvoudig aanhalingsteken: \' ";

Jellepunk

Legacy Member
een null waarde inserten in een not null veld kan ook problemen geven

nickman

Legacy Member
ik kijk er vanavond nog eens naar, maar alvast bedankt voor de tips!
($_POST is al aangepast ondertussen btw ;))
--------------------
edit:
Nog effe rap gekeken, en heb het gevonden (dankzij de 'die(mysql_error());') :D
Het was gewoon een domme typfout :$

bedankt voor de snelle antwoorden :)

Yngwie

Legacy Member
kweet ni of het hieraan zal liggen, mr hetgeen me direct opviel in u code is deze lijn

Code:
$acteurs = $HTTP_POST_VARS['actuers'];

zou toch niet mogen he

killgore

Legacy Member
Yngwie zei:
kweet ni of het hieraan zal liggen, mr hetgeen me direct opviel in u code is deze lijn

Code:
$acteurs = $HTTP_POST_VARS['actuers'];

zou toch niet mogen he
lol :lol:

Das het probleem als je hele tijd met coding bezig bent :p, over banale zaken als typos denk je gewoon niet meer na.

Poutie

Legacy Member
of ; die er niet staan, of loopkes die niet gesloten zijn, of verkeerd gesloten

Al duizend keer meegemaakt, en dan maar zoeken!
Ergste is dat in bepaalde gevallen php de error ziet op de allerlaatste lijn van je pagina... terwijl hij ergens tssdoor te vinden is
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan