1

私はこのようなテーブルを持っています

+-----------------------------------------------------------------+
|                              seeker                             |
+----+-------+----------+---------------+-------------------------+
| id | name  | password | register_date | login_date | limit_date |
+----+-------+----------+---------------+------------+------------+
| 01 | ali   |   ****   |  2012-02-08   | 2012-02-09 | 2012-03-09 |
| 02 | hamza |   ****   |  2012-04-10   | 0000-00-00 | 0000-00-00 |
| 03 | sam   |   ****   |  2012-04-15   | 0000-00-00 | 0000-00-00 |
+----+-------+----------+---------------+------------+------------+

register_date = when user ger registered
login-date= when user attempt to login
limit date= login-date + 1 month

ここで、2 つの異なる削除クエリを適用する必要があります。

私はif-statmentこのように使用しています

 $qry="select * from seeker where login_date='0000-00-00'";
    $rs= mysql_query($qry, $con);
    $res=mysql_fetch_array($rs);

    if($res==0)
    {
      //query to delete user who has login date
      $q= "delete from seeker where current_date = limit_date'";
      if($rq=mysql_query($q, $con));
      echo "$q";

    }

   else if($res!=0)
    {
        //query to delete user who didnot login and has login-date='0000-00-00'
        $qry1="delete from seeker where '$days' >= 30";
            $rs1= mysql_query($qry1, $con);
            echo $qry1;
    }

私は非常に混乱しているとmaking some mistake in if-statment思います。このコードを実行すると、実行されるのはelse if. first if私のデータベースによると両方の条件が発生するため、それも実行する必要があります

4

1 に答える 1

4

行数を取得したかったので、次のようになります。

 $qry="select * from seeker where login_date='0000-00-00'";
    $rs= mysql_query($qry, $con);
    $res=mysql_num_rows($rs);

    if($res==0)
    {
      //query to delete user who has login date
      $q= "delete from seeker where current_date = limit_date'";
      if($rq=mysql_query($q, $con));
      echo "$q";

    }

   else if($res!=0)
    {
        //query to delete user who didnot login and has login-date='0000-00-00'
        $qry1="delete from seeker where '$days' >= 30";
            $rs1= mysql_query($qry1, $con);
            echo $qry1;
    }

編集 :

<?php

    $qry="select * from seeker where login_date='0000-00-00'";
    $rs= mysql_query($qry, $con);
    $res=mysql_num_rows($rs);


    if($res!=0)
    {
        $qry1="delete from seeker where '$days' >= 30";
            $rs1= mysql_query($qry1, $con);
            echo $qry1;
    }

    $qry="select * from seeker where current_date = limit_date";
    $rs= mysql_query($qry, $con);
    $res=mysql_num_rows($rs);

    if($res!=0)
    {
         $q= "delete from seeker where current_date = limit_date";
            $rs1= mysql_query($qry1, $con);
            echo $qry1;
    }

?>
于 2012-05-09T21:38:02.980 に答える