עבור לתוכן

יצירת מספר רנדומלי בPHP

Featured Replies

פורסם

אהלן חברים ,

אני מחפש דרך להוציא מספר רנדומלי בPHP שלא יחזור על עצמו בשביל לתת אותו כID (אני שומר את הID בMySQL ) .

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

הנה מה שעשיתי עד עכשיו (נתקעתי בelse) :

<?php
function samplesrandom()
{
$link = mysql_connect("server" , "username" , "password") or die(mysql_error());
mysql_select_db("example" , $link) or die(mysql_error());
$rand = rand(0, 1000);
$random = mysql_query("SELECT id FROM example WHERE id = $rand" , $link);
if(mysql_num_rows($random) == 0)
{
echo "$random";
}
else
{

}
?>

פורסם

אתה צריך להשתמש בלולאת while, ולא סתם ב-if.

אבל למה לעשות את זה באמצעות מספר אקראי ולא סדרתית?

פורסם
  • מחבר

איך אפשר לעשות זאת בעזרת מספר סדרתי ולא אקראי (סליחה על השאלה הטיפשית , אני די מתחיל בPHP).

פורסם

אם כל משתמש חדש מקבל מספר ID עוקב לזה לפניו פשוט צריך לשמור משתנה שהוא הID של המשתמש הבא ולהגדיל אותו ב1 כל פעם

פורסם
  • מחבר

אני עדיין לא מצליח לעשות זאת - כל פעם שאני מריץ את הדף זה נותן לי את אותם מספרים , אפשר מדריך / קוד ?

אגב , למה הנחתם שאני בונה מערכת משתמשים ?

פורסם
  • מחבר

כה , מצטער :lol:

<?php $id = '1'; echo $id; $id++; ?>

פורסם

איך בדיוק אתה מצפה שזה יעבוד? כל פעם אתה עושה id=1.

אתה צריך לשמור את הערך הזה איפשהו. לחילופין תשתמש בשיטה שהצעתי עם ה-auto increment (בדיוק לזה זה נועד).

פורסם
  • מחבר

עריכה :

עשיתי את הid ברמת הMySQL ונעזרתי בmysql_insert_id() כדי להציג את הid , תודה על העזרה

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים