Fehlermeldung
Markus
- php
Hallo,
ich habe ein Script geschriebn welches ich mit eval ausführe. Dieses Script lief auch, dann habe ich aber kleinigkeiten geändert und bekomme es nicht mehr zum laufen und verstehe einfach nciht wieso. Bekomme folgende Fehlermeldung:
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /usr/export/www/vhosts/funnetwork/hosting/swt2/phpplugin.php(72) : eval()'d code on line 31.
Diese Meldung bezieht sich auf Folgen Sciot bereich (habe alles andere durch auskommentieren Ausschließen können):
//Die bisher eingegebenen Artikelnummern, Einzelpreise und Mengen hinzufügen.
$i=0;
$zeilen="";
while(isset($_POST["artikelnummer$i"])){ //Hier ist Zeile 31
$zeilen=$zeilen.$zeilentemplate;
$zeilen=str_replace("##menge##","menge",$zeilen); $zeilen=str_replace("##artikelnummer##","artikelnummer$i",$zeilen);
$zeilen=str_replace("##einzelpreis##","einzelpreis$i",$zeilen);
$zeilen=str_replace("##artikelnummerwert##","",$zeilen);
$zeilen=str_replace("##mengewert##",$_POST["menge0"],$zeilen);
$zeilen=str_replace("##einzelpreiswert##",$_POST["einzelpreis0"],$zeilen);
$i=$i+1;
}
Würde mich über hilfe sehr freuen, versuche schon seit 3 Stunden den fehler den ich da irgendwie Selber reingemacht habe zu finden.
Danke Schonmal
Markus
Hallo Markus,
[...] welches ich mit eval ausführe.
warum?
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /usr/export/www/vhosts/funnetwork/hosting/swt2/phpplugin.php(72) : eval()'d code on line 31.
auf http://de.php.net/manual/en/tokens.php steht leider nicht, was diese Meldung verursacht, aber ich würde vermuten, dass das nur passiert, weil du deinen Code per eval ausführst (um das zu testen müsste ich erst ein test-Script bauen, und dazu habe ich jetzt keine Lust :-))
while(isset($_POST["artikelnummer$i"])){ //Hier ist Zeile 31
hast du es schonmal mit
while(isset($_POST['artikelnummer'.$i])){
versucht (also das $i mit einem Punkt an den String anhängen)?
$zeilen=$zeilen.$zeilentemplate;
einfacher ist
$zeilen .= $zeilentemplate;
(siehe http://de.php.net/language.operators.string)
$i=$i+1;
$i++; (->http://de.php.net/language.operators.increment)
Grüße aus Nürnberg
Tobias
Hi Markus,
$_POST["artikelnummer$i"]
Was'n das? ------------^^^^
Mir scheint, du meinst "artikelnummer[$i]", oder? Ob das innerhalb der eckigen Klammern tut, das weiß ich allerdings auch nicht. Ich habe bisher noch keine Arrays gepostet...
Wie kommt denn diese Variable "artikelnummer" vom Browser rüber? Könntest Du das bitte per Quellcode erklären, das würde mich interessieren, damit ich was dazulernen kann. Wie gesagt, ich habe bisher noch nie Arrays übergeben.
Liebe Grüße aus Ellwangen,
Felix Riesterer.
Hallo Felix,
$_POST["artikelnummer$i"]
Was'n das? ------------^^^^
mit dem Markieren von Zitaten solltest du vorsichtig sein - bei mir (und bei anderen vermutlich auch) werden Zitate eingerückt, außerdem gibt es verschiedenlange Zitatzeichen ...
Mir scheint, du meinst "artikelnummer[$i]", oder?
nein, so wie das darsteht funktioniert das auch. Wenn $i=1 ist, bekommt man damit den Inhalt von $_POST['artikelnummer1'] - sinnvoller wären hier allerdings Arrays.
Ob das innerhalb der eckigen Klammern tut, das weiß ich allerdings auch nicht. Ich habe bisher noch keine Arrays gepostet...
nein, $_POST["artikelnummer[$i]"] ist Unsinn, wenn du das $i-te Element von $_POST['aritkelnummer'] ansprechen willst, musst du $_POST['artikelnummer'][$i] verwenden.
Wie kommt denn diese Variable "artikelnummer" vom Browser rüber? Könntest Du das bitte per Quellcode erklären, das würde mich interessieren, damit ich was dazulernen kann.
ich weiß nicht, wie Markus das macht, aber wie du ein Array bekommst, steht z.B. in http://php-faq.de/q/q-formular-select-multiple.html.
Grüße aus Nürnberg
Tobias