• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

nicht erlaubte variable...

Status
Für weitere Antworten geschlossen.

Baddii

Neues Mitglied
moin moin.

gestern hatte ich ja schon ein kleines problem und heute habe ich wieder eins: er zeigt mir folgende fehlermeldung an:

Code:
Parse error: parse error, unexpected T_VARIABLE in /usr/export/www/vhosts/funnetwork/hosting/baddii/Test-Sites/news-system/news_insert.php on line 17

Code der news-insert.php
[php:1:d74029ff82]
<?php
include "configs/config.php";
if(!isset($_POST['name'], $_POST['email'],
$_POST['homepage'], $_POST['text'])) {
die("Bitte Benutzen sie das Formular aus dem Gästebuch\n");
}
if($_POST['name'] == "") {
echo "Bitte geben sie einen Namen ein";
} else {
if($_POST['text'] == "") {
eho "Bitte geben sie einen Text ein";
}
}
$datum = date("d.m.Y");
$zeit = date("H.i")

$sql = "INSERT INTO News (Name, Email, Homepage, Inhalt, Datum, Zeit) VALUES ('".addslashes(htmlspecialchars($_POST['Name']))."', '".addslashes(htmlspecialchars($_POST['Email']))."', '".addslashes(htmlspecialchars($_POST['Homepage']))."', '".addslashes(htmlspecialchars($_POST['Inhalt']))."', $datum, $zeit); ";//Zeile 17

mysql_query($sql) OR die(mysql_error());

echo "

Vielen Dank für Deinen Eintrag.</p>\n";
echo "

<a href=\"news.php\">Zurück zu den News</a></p>\n";
?>[/php:1:d74029ff82]


könnt ihr mir mal sagen, was daran falsch sein soll ?

thx.

ps: vorher sah die zeile 17 wie folgt aus, jedoch hat sich nach der änderung nichts getan-> gleiche fehlermeldung!

[php:1:d74029ff82]
<?php
$sql="INSERT INTO News #Zeile 17
(Name,
Email,
Homepage,
//usw.
)";
?>
[/php:1:d74029ff82]
 
Werbung:
jetzt gehts, bekomme aber trotzdem noch folgenden fehler:

Code:
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 '.2006, 16.01)' at line 1

jedoch werde ich daraus nicht schlau, was falsch ist (außer, dass etwas mit dem jahr nicht stimmt...)
 
Werbung:
Liegt vermutlich daran das du die zeit mit . und nicht mit : angeben hast. ausserdem gehört das komma da nicht hin und die punkte im datum müssten eigentlich striche sein.

Datetime felder in mysql erfoden immer folgendes format:
YYYY-MM-DD HH:MM
 
also um die beiden variablen sollten auf jeden fall die ''

und warum ist im query nach dem $zeit ein semikolon?

und mach im query die `` um die spaltennamen
 
mou die `` sind dort unnoetig
(ich setze spalten namen eigentlich nie in anfuehrungszeichen)
 
Werbung:
mou schrieb:
also um die beiden variablen sollten auf jeden fall die ''
das ist bei funktionen nicht notwendig, wenn ich mich nicht irre...

und warum ist im query nach dem $zeit ein semikolon?
da ist die klammer-zu ( ")" ), und das ; (semikolon), dass den string der variable $sql beendet.

und mach im query die `` um die spaltennamen
ok; werde euch sagen obs geht.

@prophet:

wie müsste es dann richtig lauten? so etwa: date("d-m-Y") und date("H:i")

------------------------------
so, hab das mal geändert; habe auch die " um die strings von $datum und $zeit gemacht, jedoch bekomme ich dann eine fehlermeldung.

Code:
Parse error: parse error, unexpected T_STRING in /usr/export/www/vhosts/funnetwork/hosting/baddii/Test-Sites/news-system/news_insert.php on line 14

//Zeile 14: $datum = "date("d.m.Y")";
 
was sollen denn anfuehrungszeichen um eine funktion? weg damit
 
niklasboelter schrieb:
was sollen denn anfuehrungszeichen um eine funktion? weg damit


ja, das hab ich ja oben schon gesagt; hab die wieder weggemacht.

jetzt bekomme ich wieder die fehlermeldung mit dem zeitformat, kann mir denn einer sagen wie es richtig heißt?
 
Werbung:
hab die zeit in folgendes geschrieben:

$zeit = date("H.i");
und
$datum = date("d-m-Y");


klappt jetzt :)


//Edit: klappt doch nicht, er gibt -2005 als Datum aus ...
 
wie siehts denn in der tabelle aus?
also wenn du mal mit phpmyadmin oder so eine zeile einfuegst?
versuch es mal mit timestamps oder mysql timestamps (nur zahlen)
 
also, ich habe die spalten Datum und Zeit jetzt als Typ date und time festgelegt (in phpmyadmin). jedoch komm ich damit nich ganz klar...

mein eigentliches problem liegt darin, dass das datum nicht richtig angezeigt wird/wurde. und der autor/name wird auch nicht angezeigt, ka warum.

ihr könnt ja selbst mal gucken und es ausprobieren:

http://baddii.ba.funpic.de/Test-Sites/news-system/news.php

zum hinzufügen:
http://baddii.ba.funpic.de/Test-Sites/news-system/news_add.php

hier nochmal der ganze code (hab zeit und datum rausgenommen, weil ichs in phpmyadmin umgestellt habe, jedoch gibt er mir jetzt gar keine zeit mehr zurück, seitdem ich es umgestellt habe und das alte wird falsch angezeigt...):
Code von news_insert.php
[php:1:9aa91dd084]
<?php
include "configs/config.php";
if(!isset($_POST['name'], $_POST['email'],
$_POST['homepage'], $_POST['text'])) {
die("Bitte Benutzen sie das Formular aus dem Gästebuch\n");
}
if($_POST['name'] == "") {
echo "Bitte geben sie einen Namen ein";
} else {
if($_POST['text'] == "") {
echo "Bitte geben sie einen Text ein";
}
}
$datum = date("d-m-Y");
$zeit = date("H.i");

$sql = "INSERT INTO `News` (`Titel`, `Name`, `Email`, `Homepage`, `Inhalt`) VALUES ('".$_POST['titel']."', '".$_POST['name']."', '".$_POST['email']."', '".$_POST['homepage']."', '".$_POST['text']."'); ";

mysql_query($sql) OR die(mysql_error());

echo "

Vielen Dank für Deinen Eintrag.</p>\n";
echo "

<a href=\"news.php\">Zurück zu den News</a></p>\n";
?>
[/php:1:9aa91dd084]
 
Werbung:
sorry, dass ich hier jetzt doppelposts schreibe, aber sonst merkt man beim editieren ja nicht, dass jmd. etwas neues geschrieben hat :)

also, das mit autor anzeigen funktioniert (hatte mich verschrieben im code), aber das datum und die zeit funktioniert nicht mehr. hat da einer einen vorschlag? wie sieht der code aus? ich habe, um das datum und die zeit anzeigen zu lassen, nichts in die db eintragen lassen, weil MySQL das ja eig. automatisch machen sollte, mit dem datum und der zeit, weil datum vom typ date ist und zeit vom typ time ist, und MySQL die formate selbst reinschreibt.

danke,w enn mir einer helfen kann.


//edit: geht jetzt alles, habs mit NOW() gelöst *freu*
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben