מחשב כף יד

צפייה בגרסה מלאה : יש מישהו שמפתח אתרים בphp?



IlanF
01/05/08, 01:42
אני אשמח אם יש מישהו שמוכן לתרום קצת מזמנו כדי לעזור לי לבדוק כמה סקריפטים בphp שאני לא בטוח בהם כל כך..

DotanSimha
01/05/08, 10:24
כן... שלח הודעה פרטית / מסנג'ר ואני אעזור לך :)

vaza
01/05/08, 11:48
תרשום פה... אני יכול לעזור

IlanF
01/05/08, 12:21
אני מנסה לעשות מערכת דירוג לאתר שלי..
קודם על היתי רוצה לדעת מה ההבדל בין INCLUDE, REQUIRE ו- REQUIRE_ONCE

אחר כך, אני צריך לבדוק כמה קודים שלי.. אני לא בטוח שהם רשומים נכון..


<?php
function GetSetRating()
{
// connect to databas, table FileRating
// table contents: FileName , Rating (1-10) , Count (how many times file rated)
$mysql_table = "FileRating";
require_once('phpscript.php');
ConnectMySQL($mysql_table);

// get rating from user
$usrrate = $_POST["Rating"];

// get count and current rating from database
$FileInfo = GetRating($filename, $mysql_table);
$count = $FileInfo["Count"];
$rating = $FileInfo["Rating"];

// calculate new rating
$rating = ($rating + $usrrate) / $count;

// round rating to 2 numbers after .
$rating = round($rating, 2);

// insert rating to database and increment count
UpdateRating($filename, $mysql_table, $rating, $count);

}
?>

phpscript.php:


function ConnectMySQL($mysql_table)
{
$mysql_user='****';
$mysql_pass='****';
$mysql_db='****';

mysql_connect($mysql_host,$mysql_user, $mysql_pass) OR DIE ('Unable to connect to database! Please try again later.');
mysql_select_db($mysql_db);
}

function GetRating($filename, $mysql_table)
{
mysql_select_db($mysql_db);
$result=@mysql_query("SELECT * FROM $mysql_table WHERE FileName='$filename'") or die("ERROR: wrong SQL query!");
$inf=mysql_fetch_array($result);
return $inf;
}
function UpdateRating($filename, $mysql_table, $rating, $count)
{
mysql_select_db($mysql_db);
$count = $count + 1;
$result=@mysql_query("UPDATE FileRating SET Rating = '$rating' WHERE FileName = '$filenmame'");
$result=@mysql_query("UPDATE FileRating SET Count = '$count' WHERE FileName = '$filenmame'");
}
נראה ששכחתי שורה חשובה בקוד הראשון... אני אטפל בRETURN מאוחר יותר...

DotanSimha
01/05/08, 17:38
אז ככה,
require - דרישה לקובץ, אם הוא לא קיים זה יציג שגיאה + יעשה die() , יעצור את הכל לגמרי...
include - יבדוק אם הקובץ קיים, אם לא הוא יציג שגיאה אבל ימשיך בהפעלה של הקובץ
require_once לדעתי לא שימושי, require עדיף

ואת הקודים אני אבדוק מאוחר יותר :)

Lucasmadja
01/05/08, 17:44
אז ככה,
require - דרישה לקובץ, אם הוא לא קיים זה יציג שגיאה + יעשה die() , יעצור את הכל לגמרי...
include - יבדוק אם הקובץ קיים, אם לא הוא יציג שגיאה אבל ימשיך בהפעלה של הקובץ
require_once לדעתי לא שימושי, require עדיף

ואת הקודים אני אבדוק מאוחר יותר :)
עדין include(); עדיף יותר מבין שלושתם

IlanF
01/05/08, 17:48
שיניתי קצת את הקוד..
הכל עובד חוץ מהקוד שמעדכן את המסד נתונים..

function UpdateRating($filename, $mysql_table, $rating, $count)
{
$count = $count + 1;
mysql_query("UPDATE FileRating SET Rating = '$rating' WHERE FileName = '$filenmame'");
mysql_query("UPDATE FileRating SET Count = '$count' WHERE FileName = '$filenmame'");
}