hallo

ik heb een insert query gemaakt. alleen krijg ik hierbij de volgende foutmelding

"if(!empty($_POST))
{
$query = "INSERT INTO messages
SET(
msg_id = '',
msg_date = CURDATE(),
msg_time = CURTIME(),
msg_title = '". $_POST['msg_title']. "',
msg_type = '".$bericht_type."',
msg_text = '". escape($msg_text). "',
msg_url = '". $_POST['msg_url']. "',
msg_naam = '". $_POST['msg_naam']. "',
msg_land = '". $_POST['msg_land']. "',
msg_niveau = '". $_POST['msg_niveau']. "'
);
";


$result = mysql_query($query) or die(mysql_error());
header("location: messages.php");
}

"
kan iemand mij helpen met het juist noteren van de code?
if(!empty($_POST))
{
$query = "INSERT INTO messages
SET(
msg_id = '',
msg_date = CURDATE(),
msg_time = CURTIME(),
msg_title = '". $_POST['msg_title']. "',
msg_type = '".$bericht_type."',
msg_text = '". escape($msg_text). "',
msg_url = '". $_POST['msg_url']. "',
msg_naam = '". $_POST['msg_naam']. "',
msg_land = '". $_POST['msg_land']. "',
msg_niveau = '". $_POST['msg_niveau']. "'
);
";


$result = mysql_query($query) or die(mysql_error());
header("location: messages.php");
}
Vind je het heel erg als ik geen foutmelding zie staan?
Neem een goede editor, dan zie je snel genoeg dat $query niet correct wordt afgesloten. );"; is wat er op de laatste 2 regels staat. Dit moet zijn )";
oke ik heb de fout waar frank me op wees aangepast.
De melding was ik even vergeten. Maar hij is er nog wel :-)

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '( msg_id = '', msg_date = CURDATE(), msg_time = CURT' at line 2

enig idee??
Zelf gebruik ik nooit SET i.c.m. INSERT INTO, maar mag je wel haakjes () gebruiken? Lijkt mij eigenlijk van wel, maar dat is wel het punt waar het mis gaat. Haal ze even weg en laat even weten of het is gelukt.
oke ik krijg geen foutmelding meer. maar er wordt ook niks in mijn db geplaast
Controleer je wel of de query is gelukt? Ik vermoed van niet. En zoals bekend is, gaat een query vroeg of laat ALTIJD mis. In dit geval dus vrij vroeg ;)

<?php
$query ="blablabla";
$result = mysql_query($query);
if(!$result){ // query is mislukt
echo 'Mislukt: '.mysql_query().'<br />';
echo 'met query: '.$query;
die(); // beetje bot, kan beter
}

// rest van je code
?>
Dat was even een snel voorbeeldje om wat aan foutafhandeling te doen.
als ik nu de pagina probeer te openen om een nieuw bericht aan te maken krijg ik de melding Mislukt: met query: blablabla.

ik had bij de echo mysql_query(). er uit gelaten omdat deze de foutmelding


Warning: Wrong parameter count for mysql_query() in /usr/home/n1087/domains/ubee-ht.nl/public_html/SBM/test/cms/new_message.php on line 43

gaf
Heb een hele stomme tik-/denkfout gemaakt. Op regel 5 hoort natuurlijk mysql_error() te staan en niet mysql_query()...

Maar even een vraagje van mijn kant, de onzinquery blablabla heb je toch wel vervangen door jouw eigen query???
ja ik zal er nog even naar kijken

ik heb ook dit gebprobeerd

if(!empty($_POST)){
$query = "INSERT INTO messages
VALUES(
'',
CURDATE(),
CURTIME(),
'". $_POST["msg_title"]."',
'". $_POST["msg_type"]. "',
'". escape($msg_text). "',
'". $_POST['msg_url']. "',
'". $_POST['msg_naam']. "',
'". $_POST['msg_land']. "',
'". $_POST['msg_niveau']. "'

);";

$result = mysql_query($query) or die(mysql_error());
header("location: messages.php");
}

maar dan krijg ik de melding

Column count doesn't match value count at row 1
Als je het met values doet, moet het zo:

INSERT INTO messages
(veld1, veld2)
VALUES
('waarde1', 'waarde2')

Reageren