-1

私はこれを理解できないようです。結果からrow[video]値を取得しようとしていますが、ビデオのDBにエントリがあり、それがnullでない場合は、href = of edit_media.php?video=editを使用して「ビデオリンクの編集」というリンクを表示します。 (これはこのページです)。ユーザーがこのリンクをクリックすると、ページにvideo = editを含むURLが再読み込みされ、変数videoEditがTRUEにトリガーされ、データベースの現在の値を表示するフォーム入力ボックスが表示されます。

ただし、機能していないようです。何らかの理由で、[ビデオの編集]リンクをクリックする前にフォーム入力ボックスが表示されます(URLにはvideo = editがありません)。[ビデオリンクの変更]をクリックし、URLにvideo = editが含まれていると、Videoという単語が含まれるテキストボックスが表示されます。理由はわかりません。このコードの前に正しいMYSQLクエリがありますが、ここには含めませんでした。どうすればこれを機能させることができますか?

     // if the user clicked edit video link
if ($_GET['video'] = EDIT) {
$videoEdit = TRUE
}

while ($row = mysql_fetch_array($result, mysql_assoc)) {
$video = $row['video'];
}

if ($videoEdit = TRUE) {
echo '<form action="edit_media.php" method="post">
<p>Video Link: <input type="text" name="serial" size="25" maxlength="100" value=';
       if (isset($video))
            echo $video;
            ' /></p><p><input type="submit" name="submit" value="Submit Video" /></p>               <input type="hidden" name="submitted" value="TRUE" />
        </form>';
}

そしてそれは言い続けます:

if ($video != "") {
echo '<iframe width="420" height="315" src=' . $video . ' frameborder="0" allowfullscreen></iframe> | <a href=edit_media.php?video=EDIT>Modify Video Link</a>';
} else {
echo "Video Not Present | <a href=edit_media.php?video=EDIT>Add a Video</a>";
}

このスクリプトを機能させるのを手伝ってくれませんか>?

4

6 に答える 6

0

ここにたくさんの構文エラーがあります..私はいくつかの学習を行うことをお勧めします...これが私が見ることができたものです..

また、調査中は...PDOまたはDoctrineを調べてください。mysqlは非推奨です。

if ($_GET['video'] == 'EDIT') { // <<--- invalid syntax
$videoEdit = TRUE; // <--- missing semicolon
}

while ($row = mysql_fetch_array($result)) { // <-- not sure
$video = $row['video'];
}

if ($videoEdit) { // <-- boolean comparison
echo '<form action="edit_media.php" method="post">
<p>Video Link: <input type="text" name="serial" size="25" maxlength="100" value=';
       if (isset($video))
            echo $video;
            ' /></p><p><input type="submit" name="submit" value="Submit Video" /></p>               <input type="hidden" name="submitted" value="TRUE" />
        </form>';
}

ここに素晴らしいリソースがあります:http ://www.php.net/manual/en/

于 2012-10-30T13:26:09.790 に答える
0

まず、割り当てではなく、比較が必要です。

if ($_GET['video'] ==  'EDIT') {
     $videoEdit = TRUE;
 }

if ($videoEdit == TRUE) {

また、ビデオの印刷をクリーンアップする必要があります。

echo '<form action="edit_media.php" method="post">
      <p>Video Link: <input type="text" name="serial" size="25" maxlength="100" value=';
if (isset($video)){
        echo $video;
}
echo ' /></p><p><input type="submit" name="submit" value="Submit Video"/></p>'.
     '<input type="hidden" name="submitted" value="TRUE" /> </form>';
于 2012-10-30T13:23:52.680 に答える
0

2つのifステートメントで、「=」のコードが正しくありません。

if ($_GET['video'] == EDIT) {
$videoEdit = TRUE
}

while ($row = mysql_fetch_array($result, mysql_assoc)) {
$video = $row['video'];
}

if ($videoEdit == TRUE) {
echo '<form action="edit_media.php" method="post">
<p>Video Link: <input type="text" name="serial" size="25" maxlength="100" value=';
       if (isset($video))
            echo $video;
            ' /></p><p><input type="submit" name="submit" value="Submit Video" /></p>               <input type="hidden" name="submitted" value="TRUE" />
        </form>';
}
于 2012-10-30T13:24:10.603 に答える
0

この行は間違った比較演算子を使用しています:

if ($videoEdit = TRUE) {

そのはず

if ($videoEdit == TRUE) {

于 2012-10-30T13:24:26.993 に答える
0

if($ _GET ['video'] == "EDIT"){$ videoEdit = TRUE}

于 2012-10-30T13:27:46.797 に答える
0

これは、変数の値をチェックするのではなく、変数にEDITを割り当てています。

if ($_GET['video'] = EDIT)

定数チェックを逆の順序で書く習慣を身につけてみてください。

if (EDIT == $_GET['video'])

このように、「=」を再度ドロップすると、コードはまったくコンパイルされず、すぐに警告が表示されます。

同じ理由で、if ($a == $b)比較には注意してください。

于 2012-10-30T13:31:53.267 に答える