-6
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title></title>
</head>
<body>
    <?php
    $table = array ("1", "2", "3", "4", "5");
    $count = count($table); 
    echo "<table border='1'>";
    $rows = 5;
    for($i=0; $i <= $count; $i = $i + $rows)
    {
        echo "<tr>";
        for($z = 0; $z < $rows; $z++)
        {
            if ($table[$i + $z] !=0)
                echo "<td>This is row {$table[$i + $z]}</td></tr>";
            else
                echo "<td>&nbsp;</td></tr>";
        }
    }
    echo "</table>"
    ?>
</body>
</html>

これは私がしばらくの間動作させようとしてきたコードであり、他のすべては問題ありませんが、実行すると問題が発生します。私が望むようにテーブルを表示しますが、テーブルの下に投稿します:

Notice: Undefined offset: 5 in [file location] on line 22
Notice: Undefined offset: 6 in [file location] on line 22
Notice: Undefined offset: 7 in [file location] on line 22
Notice: Undefined offset: 8 in [file location] on line 22
Notice: Undefined offset: 9 in [file location] on line 22

問題は "!=0" 値にあることはわかっていますが、それを何に変更しても、すべての作業がフラッシュされるか、同じメッセージが繰り返されます。

4

4 に答える 4

2
  1. ;あなたは次のステートメントを見逃しました。

    echo "</table>"
    
  2. あなたは 5 のステップで反復しています。$i + $rowsあなた$tableは最大$table[4].
  3. エラー/通知は同じためです。
于 2013-02-09T12:52:31.080 に答える
1

同じエラーコードが表示されましたが、問題を見つけることができました。表示されるエラー メッセージは、配列に関係しています。未定義の array[key]: を参照しているようです for($i=0; $i <= $count; $i = $i + $rows)$i = $i + $rowsが犯人です。例: $i = 0and $rows=5;so 0 + 5 = 5 so array[5] で、これは配列に存在しません。$table配列では4になるだけです。これがあなたや他の誰かに役立つことを願っています。

于 2015-02-15T08:49:30.873 に答える
-1
<?php
if(isset($_POST['submit'])){
    $the_file = file($_FILES['the_file']['tmp_name']);
    for( $i = 0; $i < count($myfile); ++$i){
        echo $myfile[$i] . "<br/>";
        echo "Line " . ( $i + 1 ) . " is  " .strlen($myfile[$i]) . " characters long<br/>";
    }
}
?>


<form method="post" action="myphp.php" enctype='multipart/form-data' >
    <input type="file" name="the_file" value="Yes"/>
    <input type="submit" name="submit" value="No"/>
</form>
于 2013-12-10T15:58:58.890 に答える