Ivan hat geschrieben:Hast du ihn gefunden??
Na klar

... du nutzt eine unnötige Variable innerhalb deiner Schleife, nämlich
$m, obwohl du ja in der Schleife bereits die Schleifenvariable
$q einsetzen könntest, um jeweils die passenden "Zeilen" des Arrays zu deinem Ergebniss zu addieren.
Das wäre aber nicht so schlimm gewesen, da du mit
$m ja eine unötige aber trotzdem funktionierende Zusatzschleifenvariable hast ...
der Fehler liegt im falschen "Startindex", da arrays im Normalfall ab 0 indiziert werden. Deine gewünschten 6-ten Zeilen findest du also in 5, 15, 25 ... usw.
Hier ist also dein Skript leicht umgeschrieben:
Code: Alles auswählen
<html>
<body>
<?php
$table = explode("</table>", $_POST["comment"]);
$td = explode("</td>", $table[2]);
$i = count($td);
unset($td[0], $td[1], $td[2], $td[3], $td[4], $td[5], $td[6], $td[7], $td[8], $td[9]);
echo "<table width='80%' border='1' cellspacing='0'>
<tr>";
for ($n=0; $n<$i; $n++)
{
echo "$td[$n]";
}
echo "</td></tr></table>";
// $m = 6;
// diese Variable ist unnötig und "falsch", da sie dir so wie du sie nutzt
// immer die siebte "Zeile" aus dem Array $td liefert, da Arrays ab 0 indiziert werden !!
// sauberer Stil ist es, Variablen vorher auf einen sinnvollen Startwert zu setzen
$ergebnis = 0;
for ($q=15; $q<$i; $q=$q+10)
{
// $m = $m+10;
// du nutzt jetzt einfach die Schleifenvariable $q als "Zeilen"-Index für $td!
// und dann nutzen wir die Funktion intval(), um "echte" Ganzzahlen aus dem Array zu bekommen
$ergebnis = $ergebnis + intval($td[$q]);
echo "$td[$q]<br>";
}
echo "$ergebnis";
?>
</body>
</html>
Gruss,
Manne.