הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [php+sql] בעיה בif ובהכנסת נתונים לטבלה (https://hosts.co.il/forums/showthread.php?t=51838)

daMn 11-08-07 20:30

[php+sql] בעיה בif ובהכנסת נתונים לטבלה
 
אז ככה אני בונה לי מערכת סטטיסטיקה לאתר שאני יבדוק בו כמה פרמטרים.
בכל מקרה אני עושה פעולות פשוטות ומשום מה זה לא מצליח.

הבעיה היא שאני נכנס לדף סטטיסטיקה ולאחר ריענון הדף הוא מכניס לי עוד שורה למסד אף על פי שקבעתי לו שאם הוא מזהה איפי כמו במסד אז הוא לא מוסיף.

הנה הקוד
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, refer) VALUES ('$ip_client', '$current_date', '$refer')");
}



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


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


Meir 11-08-07 20:33

זה אמור להיות ככה:

קוד:


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


daMn 11-08-07 21:09

ציטוט:

נכתב במקור על ידי Meir (פרסם 540003)
זה אמור להיות ככה:

קוד:


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


זה כבר לא משנה :(
כי הקטע הזה רק בודק אם אין שום שורות במסד אז זה מוסיף שורה.
פה לא הבעיה...

מחכה לפתרון...

Elad-A 11-08-07 21:11

בשורה הזו:

PHP קוד:

if ($ip_client $row['ip'] && $current_date != $row['date']) { 

תחליף את ה = ל ==

וד"א הדרך שמאור הציע חוסכת לך את כל הקוד שרשמת (יותר נכון את רובו)

Eran-s 11-08-07 21:13

ציטוט:

נכתב במקור על ידי Elad-A (פרסם 540017)
בשורה הזו:

PHP קוד:

if ($ip_client $row['ip'] && $current_date != $row['date']) { 

תחליף את ה = ל ==

נכון...

= אופרטור השמה
== אופרטור השוואה

daMn 11-08-07 21:15

ציטוט:

נכתב במקור על ידי Elad-A (פרסם 540017)
בשורה הזו:

PHP קוד:

if ($ip_client $row['ip'] && $current_date != $row['date']) { 

תחליף את ה = ל ==

וד"א הדרך שמאור הציע חוסכת לך את כל הקוד שרשמת (יותר נכון את רובו)

עובד :)
אני לא סובל שיש לי את הטעויות הקטנות האלה שאני לא שם לב אליהם *_*


כל הזמנים הם GMT +2. הזמן כעת הוא 20:02.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ