2016-03-27 5 views
2

私は少し助けが必要です。私は、特定のクエリ(レコードの削除)をレコードのIDではなく、別のクエリ(レコードの選択)がエコーアウトされているレコードと関連付ける方法を見つけようとしています。PHPで変数を変数に変更するクエリを関連付ける方法

このコード行は、idが指定されたときには完全に機能しますが、レコードを削除するとidがスキップすることができるレコードに対しても必要です。

$querytwo = "DELETE FROM `paginas` WHERE id = 5"; 

私は列 'ID'、 'ページタイトル'、 'toevoeging'(オランダ語で追加)、 'メッセージ' と私のphpmyadminのデータベース内のテーブルを持っています。最初はINT、残りはvarchars/textです。

これは愚かな質問かもしれませんが、私はそれを残念です。私はまだPHPとプログラミング一般には新しいです。

ここにコードがあります。私は明確にするためにコードをラインにコメントしました。ありがとうございます!。

<?php 
     if (isset($_SESSION['email'])) //if the admin is active, forms can be written out. 
     { 
     echo '</nav> 
      <br><br> <div class="inlogscript"> 
     <form action="verstuurd.php" method="post"> 

      <input type="text" placeholder="Titel" method="POST" name="pagetitle" /><br><br> 
      <input type="text" placeholder="Toevoeging" method="POST" name="toevoeging" /><br><br> 
      <textarea class="pure-input-1-2" placeholder="Wat is er nieuws?" name="message"></textarea><br> 
      <input type="submit" value="Bevestigen" /> 
     </form></div>'; 
     }  
     ?> 
    <div class="mainContent"> 

<?php 

    include_once("config.php"); //this is the database connection 
    $query = "SELECT * FROM paginas "; //selects from the table called paginas 
    $result = mysqli_query($mysqli, $query); 
     while($row = mysqli_fetch_assoc($result)) 
     { 
     $pagetitle = $row['pagetitle']; 
     $toevoeging = $row['toevoeging']; 
     $message = $row['message']; 

      echo '<article class="topcontent">' . '<div class="mct">' . '<h2>' . "$pagetitle" .'</h2>' . '</div>' . "<br>" . 
      '<p class="post-info">'. "$toevoeging" . '</p>' . '<p class="post-text">' . '<br>'. "$message" . '</p>' .'</article>' . '<div class="deleteknop">' . '<form method="post"> 
      <input name="delete" type="submit" value="Delete Now!"> 
      </form>' . '</div>' ; 
     } //This long echo will call variables $pagetitle, $toevoeging and &message along with divs so they automatically CSS styled, 
     //along with a Delete button per echo that has the 3 variables 

    $querytwo = "DELETE FROM `paginas` WHERE id = 5"; 
    if (isset($_POST['delete'])) //Deletes the query if 'delete' button is clicked 

     { 
      $resulttwo = $mysqli->query($querytwo); 
     } 

     ?> 
      </div> 
     </div> 

また、レコードのInsert INTOクエリがあります。再度、感謝します!

$sql = "INSERT INTO paginas (pagetitle,toevoeging, message) 
VALUES ('$_POST[pagetitle]','$_POST[toevoeging]','$_POST[message]')"; 
//the insertion into the table of the database 

if ($MySQLi_CON->query($sql) === TRUE) { 
    echo ""; 
} else { 
    echo "Error: ". $sql . "" . $MySQLi_CON->error; 
} 
+0

そして、何何に関連付けされなければなりませんか? –

+0

このコードは、どのクエリが選択されているかを知るように記述する必要があります。 "DELETE FROM' paginas' WHERE id = 5 "; 「DELETE FROM 'paginas' WHERE id = $ idofthepost」; $ idofthepostは動作しません。私はそれで別の何かをする必要があるが、私はちょうど何がわからない。 – Zhyohzhy

答えて

0

これは十分ではないが、あなたの反響を開始するために:

echo '<article class="topcontent"> 
     <div class="mct"> 
     <h2>' . $pagetitle .'</h2> 
     </div><br> 
     <p class="post-info">'. $toevoeging . '</p> 
     <p class="post-text"><br>'.$message.'</p> 
     </article> 
     <div class="deleteknop"> 
     <form method="post">'; 
     // you ll want to use $_POST["id"] array to delete : 
    echo '<input type="hidden" name="id" value="'.$row['id'].'"> 
     <input name="delete" type="submit" value="Delete Now!"> 
     </form> 
     </div>' ; 
+0

それは未定義の変数エラーを引き起こします、どうすれば$ rowを宣言する必要がありますか? – Zhyohzhy

+0

申し訳ありません、私はhtmlの 'name'属性を忘れてしまいました。今度は '$ _POST ['id']'は未定義になりません – butterFlyNick

+0

ありがとう、ありがとうございます。私はまだまだそこにいませんが、私はとても感謝しています。 – Zhyohzhy