2017-02-21 5 views
1

//変数$ stat_ipは、それはBlacklistedと呼ばれる別のテーブルにあるnetwork_start_ipとnetwork_end_ipという列の値の間にあります。私は3つすべてにアクセスして同じことをするのに役立つ関数を書く必要があります。

<?php 
     include('adodb/adodb.inc.php'); 
     mysql_connect("*****","***","***"); 
     mysql_select_db("********"); 
     $pl=mysql_query("SELECT stat_ip,stat_session_ip FROM Hasoffers"); 
     $count=mysql_num_rows($pl) 

      while($row=mysql_fetch_array($pl)) 
       { 
       $stat_ip=$row['stat_ip']; 

       echo fn($stat_ip)."<br>"; 
       } 

      $bip=mysql_query("SELECT inet_aton(network_start_ip),inet_aton(network_end_ip) FROM blacklisted"); 

      while($array=mysql_fetch_array($bip)) 
      { 
      $start_ip=$array['network_Start_ip']; 
      $end_ip = $array['netwrok_end_ip']; 

      } 


      function fn($stat_ip) 
      { 
       $result =mysql_query('SELECT stat_ip FROM Hasoffers where ($stat_ip BETWEEN INET_ATON(network_start_ip) AND INET_ATON(network_end_ip)'); 





     } 
     ?>php 

答えて

0

あなたが単一でのクエリの両方が必要な場合はあなたが

SELECT a.stat_ip 
FROM Hasoffers as a 
LEFT JOIN blacklisted on as b on inet_aton(a.stat_ip) 
       between INET_ATON(b.network_start_ip) AND INET_ATON(b.network_end_ip) 
+0

の間に加わるが、どのように私は私のIP列にアクセスするか、左を使用することができます選択

SELECT inet_aton(network_start_ip),inet_aton(network_end_ip) FROM blacklisted WHERE your_ip_column BETWEEN INET_ATON(network_start_ip) AND INET_ATON(network_end_ip) 

を使用することができます他のテーブルの列(network_start_ipとnetwork end_ip)を同時に使用することができます。彼らは2つの異なるテーブルに属しているので。 –

+0

答えが更新されました。あなたが探しているものが希望です – scaisEdge

関連する問題