2012-04-05 12 views
0

を結果ラップ:PHP関数やプリントでmysqlのクエリが、私はいくつかのデータを削除するには、私のデータベースに走った次のクエリ持っ

delete subscriber, subscription from subscriber,subscription where subscription.status = 0 and subscription.snid=subscriber.snid; 

をしかし、私は今走るPHP関数を作成する必要がありますclean

というボタンを押して、削除したすべてのsubscriberのデータを表示します。

ここから始めるべきではありません。

これはこれまでのところ、私のhtmlです:

<form id="form1" name="form1" method="post" action=""> 
Clean subscribers: 
<input type="submit" name="clean" id="clean" value="Clean" /> 
</form> 

これですべてのヘルプやアドバイスが非常に高く評価されます。あなたは、ハンドラページにフォームを送信するボタンが必要になります

答えて

1

あなたは努力していませんか?とにかく私はあなたに答えてくれるでしょう。

<?php 
$con = mysql_connect("serverUrl","login","password"); 
mysql_select_db("dbName", $con); 

$result = mysql_query("SELECT * FROM subscriber, subscription where subscription.status = 0 and subscription.snid=subscriber.snid;"); 

while($row = mysql_fetch_array($result)) 
    { 
    echo $row['subscriber.name']; //assuming you have a field {name} in your table 
    echo "<br />"; 
    } 
mysql_query("delete subscriber, subscription from subscriber,subscription where subscription.status = 0 and subscription.snid=subscriber.snid;"); 
?> 
+0

ありがとう、私は少し努力して、かなり多くを読んだ。ティスは今、私にもっと感動し始めています。 – Cybercampbell

+0

'$ result'が空であるかどうかをチェックするには?それが空の場合、私は削除するものがないというメッセージを表示したい。 – Cybercampbell

+0

if(!$ result){ echo 'nothing'; } – skafandri

2

Cは、ハンドラページは、クエリを実行し、データを印刷+集めるでしょう。

ページを更新したくない場合(またはユーザーを別のページに誘導したい場合)は、Ajaxを使用することをお勧めします。

これが始まる場所です。

1

まず、削除するデータを選択する必要があります。

次に、削除して、選択した行を返す必要があります。

$rows = array(); 
mysql_connect(...); 
$res = mysql_query(...select query here...); 
while($row=mysql_fetch_assoc($res)) { 
    $rows[] = $row; 
} 
$res = mysql_query(...delete query here...); 
return $rows; 
1

サブスクライバを完全に削除したくない場合があります。もし私があなただったら、削除されたかどうかを示す "deleted"という名前のフィールド、またはそのラインに沿った何かのフィールドを含めるでしょう。次に、そのフィールドが真であるか偽であるかに応じて照会します。

+0

こうして、あなたが探している情報を返す削除に頼る必要はありません。 * shrugs * 私は実際にはデータを削除しないで "削除された"とマークするのは非常に安全な方法です。その情報がいつ必要になるかわからない。 –

+1

トマスありがとう、これについてもう少し考えてみよう。 – Cybercampbell

関連する問題