5

はい、大晦日にコーディングしています。とにかく、奇妙な問題だと思うものがあります(助けが必要なほど奇妙です)。次のコードは機能します(一種)。6 行目のエコー ($row["sitename"]) は、"Huntington Park" のような完全な名前を出力しますが、フォーム内の最初のテキスト ボックスには "Huntington" のみが表示され、名前の 2 番目の部分は表示されません。以下は画面の一部です。

    $query = "SELECT * FROM `siteinformation` 
            WHERE `id` = '".$sitedrop."'";
            echo $query;
    $results = $pdo->query($query);
        while ($row = $results->fetch()) { 
        echo $row["sitename"].'
            <form action="dummypage.php" method="post">
            <table width="526">
              <tr>
                <td width="520" align="right"><p>Site Name: 
                    <input type="text" name="sitename" value='.$row["sitename"].'>
                 </p>
                  <p>Program: 
                    <input type="text" name="program" value='.$row["program"].'>
                  </p>
                  <p>Phone: 
                    <input type="text" name="sitephone" value='.$row["sitephone"].'>
                  </p>
        </td>
        </tr>
        </table>
</form>';
        }
4

3 に答える 3

16

コードの出力:

<input type="text" name="sitename" value=Huntington Park>

それは次のようになります。

<input type="text" name="sitename" value="Huntington Park">

変化する:

    <input type="text" name="sitename" value='.$row["sitename"].'>

に:

    <input type="text" name="sitename" value="'.$row["sitename"].'">

値は引用符で囲まれていないため、最初の文字列のみが選択されます! 他の入力についても同じことを行う必要があります。

于 2013-01-01T01:13:18.427 に答える
0

変化する:

<input type="text" name="sitename" value='.$row["sitename"].'>

に:

<input type="text" name="sitename" value="'.$row["sitename"].'">
于 2013-01-01T01:45:25.490 に答える
0

HEREDOC 表記を使用すると便利な場合があります。 http://php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc

$results = $pdo->query($query);
$out = NULL;
while ($row = $results->fetch()) 
{ 
    $out. = <<<ENDOUT
    $row["sitename"]
    <form action="dummypage.php" method="post">
    <table width="526">
    <tr>
    <td width="520" align="right">
    <p>Site Name: 
    <input type="text" name="sitename" value="{$row["sitename"]}" />
    </p>
    <p>Program: 
    <input type="text" name="program" value="{$row["program"]}" />
    </p>
    <p>Phone: 
    <input type="text" name="sitephone" value="{$row["sitephone"]}" />
    </p>
    </td>
    </tr>
    </table>
    </form>
ENDOUT;
}
echo $out;
于 2013-01-01T01:19:04.890 に答える