Mail page

Status
Niet open voor verdere reacties.

hawkins

Gebruiker
Lid geworden
18 jun 2009
Berichten
57
Hallo,

Ik heb hier een actie script om te mailen, er is alleen een klein probleem.
De gegevens die worden verzamelt worden niet opgeslagen in de data base (Mogelijk bij de insert command.)

kan iemand mijn fout vinden.


mijn script
PHP:
<?php

include("config.php");

if (isset($_POST['send'])) { 
$from = $naam2;
$to = $_POST['to'];
$ond = $_POST['ond'];
$date = date("m-d-y");  
$tekst = $_POST['comment'];
$check = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE username ='$to'"));

if($to == $from){
echo"U kunt geen berichten naar u zelf versturen.";
exit;
}

if($to == "" || $ond == "" || $tekst == ""){
echo"U heeft niet alle velden ingevuld.";
exit;
}

if($check == False){
echo"$check";
echo"De persoon waar dit bericht naar toe moet bestaat niet.";
exit;
}

mysql_query("INSERT INTO mail (From, To, Ond, Text, Data)
VALUES 
('".$from."', '".$to."', '".$ond."', '".$tekst."', '".$date."')");
echo"Uw bericht is verzonden";
}
?>

Vriendelijke groet
hawkins
 
Geef onderaan de error weer die je van mySQL krijgt:

PHP:
echo mysql_error();

Daar zou je een heel eind mee moeten komen.
 
Mijn error is nu:

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 'From, To, Ond, Text, Data)

VALUES ('adgfsg', 'pieter', 'asdf', 'asdf', '02-1' at line 1

Maar de SQL colom zijn gewoon met Varchar dat doet het altijd.
 
From is een gereserveerd keyword van SQL ( select * FROM tabel enzo ) dus als je die als veld naam gebruikt, moet je hem escapen met backticks.

[sql]
INSERT INTO tabel ( `from` )
VALUES ( 'hoi' )
[/sql]

(backtick zit links van de 1 meestal ;))
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan