Checkboxarray in echo Funktion

Hallo,
ist es möglich folgende Anweisung in einer Php Datei(möglichst mit echo) auszugeben?

<form action="check.php" method="post">

... <input type="checkbox" name="check[]" value="1">

Bisher hab ichs so gemacht:

echo "<form action=\"check.php\" method=\"post\"> <input type=\"checkbox\" name=\"check[]\" value=\"1\">";

Es hat alles perfekt angezeigt. Aber wenn ich dann in der check.php die markierten Checkboxen mit folgendem Code:

$checkarray = $_POST['check'];

in ein Array speichern will, dann kommt ein parse Fehler in der Zeile. Weiß jemand woran das liegt bzw wie ich es beheben kann? Ich nehm mal stark an dass es an dem name=\"check[]\" liegt.
 
sei doch einfach mal so nett und poste
1) die komplette fehlermeldung und
2) etwas mehr quelltext um die zeile der fehlermeldung herum.

danke bloddy
 
Sorry. Das Problem hat sich weitestgehend behoben. Nun wird nur nicht der richtige Wert übergeben.

Ich geb mal den originalen an:

echo "<form action=\"test.php\" method=\"post\"> <table> <tr> <td> <input type=\"checkbox\" value='$index' name='delcheck[]'>....</td> </tr> </table> </form>

Dabei ist $index ein Wert, der in einer For-Schleife imme´r um eins nach oben gezählt wird. Demnach werden also soviele Checkboxes erzeugt wie die for-schleife läuft und dabei wird der Value Wert immer um eins höher als der vorherige.

Wenn ich das ganze per Method="post" an test.php verschicke, mit folgendem Code:

<?php
$delindex = $_POST['delcheck'];
echo "$delindex[0]";
?>

dann wird


ausgegeben, anstat dem Wert. (Das ganze ist ein Beispiel, deswegen hab ich oben nur nach dem Feld [0] gefragt. Ich will damit nur sehn ob der richtige Wert übergeben wird, was bisher nicht der Fall ist).
Aber ich denke das es irgendwo da liegen muss:

value='$index' name='delcheck[]'

denn ich weiß nicht genau, wie man in der Echo Funktion mit input ein Checkboxarray mit einer Variablen als Value erzeugt.
 
das Problem gab es hier in letzter Zeit doch sehr häufig:
PHP:
foreach($_POST['delcheck'] as $delindex) {
    echo $delindex;
}
 
Wenn ich genau das mach kommt nur eine Ausgabe mit

PHP:
Array

Ich glaub eher das irgendetwas falsches übergeben wird, bei dieser Anweisung:


PHP:
echo "<form action=\"test.php\" method=\"post\"> <table> <tr> <td> <input type=\"checkbox\" value='$index' name='delcheck[]'>....</td> </tr> </table> </form>

Diese '' um $index und delcheck[] vielleicht?
 
Wie sagt man so schön? Selbst ist der Mann. Nachdme ich ne Weile rumprobiert hab, was ziemlich nervig ist, hab ich rausbekommen worans lag:

Dieser Teil:

PHP:
<input type=\"checkbox\" value='$index' name='delcheck[]'>

muste in folgenden Teil umgeändert werden:

PHP:
for($i=0;$i<$anzahlindex;$i++){
<input type=\"checkbox\" value=\"" . $index[$i] . "\" name='delcheck[]'>
}

Bei dieser Anweisung

PHP:
foreach($_POST['delcheck'] as $delindex) {
echo $delindex;
}

gibt er mir nur "Array" aus:

Aber mit der Anweiung:

PHP:
$delindex = $_POST['delcheck'];
echo "$delindex[0]";

funktioniert alles.
 
Zurück