View Single Post
ישן 14-08-07, 15:31   # 1
daMn
הוסטסניון
 
מיני פרופיל
תאריך הצטרפות: Mar 2007
גיל: 34
הודעות: 2,050

daMn לא מחובר  

[SQL+PHP] בעיה בעיה בIF והכנסה לטבלה

אז ככה אני בונה מין מערכת ססטיסטיקה קטנה.

אז מה שאני עושה זה ככה:
כאשר נכנסים לעמוד המערכת לוקחת את הip של האורח ואת התאריך שהוא נכנס, לאחר מכן היא בודקת אם האיפי קיים(במידה שלא היא מוסיפה אותו לטבלה), והיא בודקת גם אם האיפי קיים אך התאריך שונה מהיום ואז היא גם מוסיפה אותו לטבלה.

עד כאן בסדר,
ניקח דוגמא שיש לי למשל בשורה הראשונה ככה:
IP = 1.1.1.1
DATE = 13/08/2007

לאחר מכן עוד שורה שהיא
IP = 1.1.1.1
DATE = 14/08/2007

(*שימו לב לשינוי תאריך)

עכשיו למשל הIP הזה נכנס היום (14/08/2007) פעם שנייה כבר, אז המערכת שלי משום מה בודקת רק את השורה הראשונה ואז היא מוסיפה עוד פעם, ככה שיש לי פעמיים את הIP באותו תאריך.

הנה הקוד:

PHP קוד:
<?php 
include "../connection.php"

$ip_client       =   $_SERVER['REMOTE_ADDR'];
$refer           =   $_SERVER['HTTP_REFERER']; 
$current_date    =   date ("d/m/Y");


$sql mysql_query("SELECT * FROM statistics");
$num_rows mysql_num_rows($sql);
if (
$num_rows == ) {
mysql_query("INSERT INTO statistics (ip, date) VALUES ('$ip_client', '$current_date')"); 



$ips mysql_query("SELECT * FROM statistics WHERE ip='$ip_client'");
$row mysql_fetch_array($ips);

if (
$ip_client == $row['ip'] AND $current_date != $row['date']) {
mysql_query("INSERT INTO statistics (ip, date) VALUES ('$ip_client', '$current_date')");
}

if (
$ip_client != $row['ip']) { 
mysql_query("INSERT INTO statistics (ip, date) VALUES ('$ip_client', '$current_date')");
}  

?>
אני צריך שהיא תבדוק את כל השורות ואם יש באחת השורות אותו איפי ואותו תאריך אז זה לא מוסיף, ואני לא ממש מצליח...
__________________
"חינוך למדעי המחשב לא יכול להפוך אף אחד למתכנת מומחה יותר מאשר לימוד על מברשות וצבעים יכול להפוך מישהו לצייר מיומן."
(אריק ס. ריימונד)
  Reply With Quote