Ik schaam me bijna maar ik krijg iets vreselijks simpels niet voor mekaar en loop nu al een uur te klooien

Ik heb een tabel in Mysql met gegevens van een persoon en die wil ik updaten nadat er een formuliertje is ingevuld. Dat staat en werkt tot het moment waarop de query wordt uitgevoerd. ipv de tekst krijg ik de naam van de variabele

de query ziet er nu zo uit

$sql = 'UPDATE `member_basic` SET `first_name` = \'$HTTP_POST_VARS[first_name]\' WHERE `id` = 1 ';

die id heb ik nu even zo staan om te testen maar dat wordt straks een session_id ..dus daar even niet op letten

Ik heb het geprobeerd zonder de aanhalingstekens, met dubbele aanhalingstekens voor en achter en de enkele weg met de '".$variable."' manier.... als ik echo $HTTP_POST_VARS['first_name'] doe geeft hij netjes de naam ik heb verbinding met de db en heb de juiste user/pw met de juiste machtiging

wie doet het licht aan want ik zie het even niet meer?

Edwin schreef op 20.06.2007 00:41
en als je een variable in je query hebt dan gebruik je '".$variable ."'
toch?
Zie het stukje 'variabelen haal je buiten quotes'.
Arjan Schuurman schreef op 20.06.2007 09:21
Weet ik veel, ik gebruik geen MySQL xD
Leg eens uit wat dit met MySQL te maken heeft, snap dat even niet.

Wanneer je PDO gebruikt, dan gebruik je dit soort constructies (met dank aan de handleiding):
<?php
$stmt = $dbh->prepare("INSERT INTO REGISTRY (name, value) VALUES (:name, :value)");
$stmt->bindParam(':name', $name);
$stmt->bindParam(':value', $value);

// insert one row
$name = 'one';
$value = 1;
$stmt->execute();

// insert another row with different values
$name = 'two';
$value = 2;
$stmt->execute();
?>
PDO is zo te zien idd iets waar ik in moet duiken. dank je

Reageren