Kleines Problem mit einem Script
Homer
- php
Ich versuche gerade ein kleines Script zu machen, wichtig ist dieser Teil:
include("config.php");
$text = htmlspecialchars($text, ENT_QUOTES);
$ip = getenv("REMOTE_ADDR");
$timestamp = time();
mysql_query("insert into think value($text)");
echo "Eingetragen...<br><br>";
er schreibt nämlich nichts in die db, woran liegt das ?
Hi,
Ich versuche gerade ein kleines Script zu machen, wichtig ist dieser Teil:
include("config.php");
$text = htmlspecialchars($text, ENT_QUOTES);
$ip = getenv("REMOTE_ADDR");
$timestamp = time();
mysql_query("insert into think value($text)");
echo "Eingetragen...<br><br>";er schreibt nämlich nichts in die db, woran liegt das ?
Weil wahrscheinlich die Syntax falsch ist.
Wie wärs mit einer Fehlermeldung? Was soll in die DB? Woher kommen die Variablen? Wo öffnest Du eine connction zur Datenbank?
Ich vermute übrigen es liegt an deiner insert-Anweisung
sollte die nichtin etwa so aussehen
insert into think(spaltenname1) value('".$text."')
ciao
romy
Ich hab das jetzt so geändert (mal der ganze Code) aber es geht trotzdem noch nicht, mysql connect ist übrigens in der config.php
<?php
if(file_exists("install.php")){echo "Bitte install.php loeschen!"; die();}
if(isset($_GET['save']) && $_GET['save'] == "true")
{
$ipdatei = "guestbook_lastip.txt";
$fp = fopen($ipdatei, "r");
$str = fread($fp, filesize($ipdatei));
fclose ($fp);
if(!$_POST['text'])
{
echo "<b>Du musst einen Text eingeben</b><br><br>";
}
elseif($str == getenv("REMOTE_ADDR"))
{
echo "<b>Fehler: IP Sperre</b><br><br>";
}
else
{
$fp = fopen ("guestbook_lastip.txt","w");
fwrite($fp, getenv("REMOTE_ADDR"));
fclose($fp);
include("config.php");
$text = htmlspecialchars($text, ENT_QUOTES);
$ip = getenv("REMOTE_ADDR");
$timestamp = time();
mysql_query("insert into think value('".$text."')");
echo "Eingetragen...<br><br>";
}
}
?>
Hi,
mysql_query("insert into think value('".$text."')");
echo "Eingetragen...<br><br>";
hinter dem Tabellennamen "think" muss in Klammern stehen in welche Spalte Du es einfügen willst! Hats Du mehrere, dann durch Kommata getrennt.
insert into think(name) values('value')
ciao
romy
Problem ist gelöst, danke für eure Hilfe. :)
Hi,
mysql_query("insert into think value('".$text."')");
echo "Eingetragen...<br><br>";
hinter dem Tabellennamen "think" muss in Klammern stehen in welche Spalte Du es einfügen willst! Hats Du mehrere, dann durch Kommata getrennt.insert into think(name) values('value')
ciao
romy
Hallo Homer, <- </faq/#Q-05a>
include("config.php");
steht da was wichtiges drin?
$ip = getenv("REMOTE_ADDR");
mhh... was soll das sein? meinst du vielleicht $_SERVER["REMOTE_ADDR"]?
mysql_query("insert into think value($text)");
mhh... eher so:
$query = "INSERT INTO think VALUE ('$$text')";
$result = mysql_query ($query)
or die ("Ungültige Abfrage: " . mysql_error());
... oder so ähnlich zumindest
er schreibt nämlich nichts in die db, woran liegt das ?
keine Ahnung. Gibt es eine Fehlermeldung? wo steht mysql_connect(...)?
Grüße aus Nürnberg
Tobias
mysql_query("insert into think value($text)");
Hi!
hab mich jetzt nicht näher mit dem Skript befaßt; aber muß es rein mysql-technisch nicht heißen:
"[...]insert into think values([...]"?
also nicht "value" sondern "values"?
Gruß,
Marco