0

私はphpとフォームの開発が初めてで、これが私が達成しようとしていることです:

まず、2 つのテキスト値のみを入力する単純なフォームがあります。

Form1
<br>
<form action="gather.php" method="post">
    Catalog:
    <input type="text" name="folderName" maxlength="50">
    <br>
    File Name:
    <input type="text" name="fileName" maxlength="50">
    <br>
    <input type="submit" name="formSubmit" value="Submit">
</form>

そして今、gather.php という 2 番目のファイルがあり、これらの 2 行を取得して、カタログ内のファイルをカウントするために使用します。

<?php
if(isset($_POST['formSubmit'])){
    $folderName = $_POST['folderName'];
    $fileName = $_POST['fileName'];
    $numberOfImages = count(glob($folderName . "/*.jpg"));
    for($i = 1; $i <= $numberOfImages; $i++){
        echo "<br><input type=\"text\" name=\"imie" . $i . "\"><br/>\n";
        echo "<img src=\"" . $folderName . "/0" . $i . ".jpg\" height=\"50px\" width=\"50px\"><br><br>\n";
    }


    echo "\n<br>" . $folderName . "<br>" . $fileName . "\n";
}

?>
<br>
Final form
<br>
<form action="build.php" method="post">
<input type="submit" name="finalSubmit" value="Submit">
</form>

そして、これにより、次のようには見えない build.php ファイルが表示されるはずです。

<?php
if(isset($_POST['finalSubmit'])){
    //loop and other stuff
    $temp = $_POST['imie1'];
    echo $temp;

}
?>

つまり、この最終ファイルでは、gather.php ファイルのテキスト フィールドに入力されたすべてのデータを取得したいと考えています。しかし、build.php で $_POST['imie1'] に何もないという undefined index エラーが発生します。その理由を教えてください。このデータを 2 番目のファイルから 3 番目のファイルに取得する方法はありますか?

編集:答えはthxです。1つだけを受け入れることができ、複数は同じであるため、彼女をサポートするためだけに担当者が最も少ないユーザーを選択します:)

4

3 に答える 3

2

form タグ内に入力を追加する必要があります。そうしないと送信されません。

    <br>
    Final form
    <br>
    <form action="build.php" method="post">
    <?php
    if(isset($_POST['formSubmit'])){
        $folderName = $_POST['folderName'];
        $fileName = $_POST['fileName'];
        $numberOfImages = count(glob($folderName . "/*.jpg"));
        for($i = 1; $i <= $numberOfImages; $i++){
            echo "<br><input type=\"text\" name=\"imie" . $i . "\"><br/>\n";
            echo "<img src=\"" . $folderName . "/0" . $i . ".jpg\" height=\"50px\" width=\"50px\"><br><br>\n";
        }


        echo "\n<br>" . $folderName . "<br>" . $fileName . "\n";
    }

    ?>
    <input type="submit" name="finalSubmit" value="Submit">
    </form>
于 2012-08-06T12:06:19.883 に答える
1

2番目のフォームはファイルの先頭に来る必要があると思い<form>ます-タグ内の要素のみを送信するため、HTMLを生成してからフォームを開くため、送信されません。

<br> 
Final form 
<br> 
<form action="build.php" method="post"> 
<?php 
if(isset($_POST['formSubmit'])){ 
    $folderName = $_POST['folderName']; 
    $fileName = $_POST['fileName']; 
    $numberOfImages = count(glob($folderName . "/*.jpg")); 
    for($i = 1; $i <= $numberOfImages; $i++){ 
        echo "<br><input type=\"text\" name=\"imie" . $i . "\"><br/>\n"; 
        echo "<img src=\"" . $folderName . "/0" . $i . ".jpg\" height=\"50px\" width=\"50px\"><br><br>\n"; 
    } 


    echo "\n<br>" . $folderName . "<br>" . $fileName . "\n"; 
} 

?> 
<input type="submit" name="finalSubmit" value="Submit"> 
</form> 
于 2012-08-06T12:08:08.027 に答える