عرض مشاركة واحدة
عضو فعال
تاريخ التسجيل: Jul 2003-
#2 (permalink)  

عزيزي المشكلة بسيطة جدا إن شاء الله ..


الفكرة هي ، قبل اي استعلام يجب ان تسال نفسك .. النتيجة او ال result من عملية الاستعلام ممكن يكون اكثر من نتيجة ؟

لا ؟ اذا لا داعي لاستعمال while

لأن النتيجة ستكون واحدة باي من الاحوال

هذا هو نفس كود :
كود PHP:
 <html> 
<body> 
<? 
$date
date ("j/n/y"); 
$conn mysql_connect ("localhost","root",""
    or die (
"هناك خطأ في الاتصال بقواعد البيانات  يرجى مراسلتنا على [email]sdfadfsdsfsdwss@hotmail.com[/email]"); 

$sql mysql_db_query ("database","select values from cards where secret_number = '$secret_number' and status = '1'"); 
$row mysql_fetch_array ($sql); 
$cardvalue $row[values]; 

$hash=MD5($Password); 
$sql2 mysql_db_query ("database","select pts from users_accounts where user_name = '$user_name' and password = '$hash'"); 
$row mysql_fetch_array ($sql2);
$pts $row[pts]; 

$new_value $pts $cardvalue

if (
$new_value>$cardvalue>0) { 
$updatecards mysql_db_query ("database","UPDATE `cards` SET , `status` = '1', `for_user` = '$user_name', `date` = '$date' WHERE `secret_number` = `$secret_number`"); 
$updatepts mysql_db_query ("database","UPDATE `users_accounts` SET `pts` = '$new_value' WHERE `user_name` = `$user_name`"); 
}else{ 
echo 
"لم يتم اضافة القيمة الى رصيدك تأكد من اسم المستخدم وكلمة المرور ورقم البطاقة السري ثم أعد المحاولة مرة أخى"

<? 
</
body
</
html>


المشكلة كانت أن المتغيرات داخل while يتم اعتبارها local variable ولا يمكنك استخدام قيمها خارج ال while إلا بطريقة واحدة .. وهي تعريفها global

هذا او انك تستبعد ال while تماما إن لم تكن بحاجة إليها .. كما فعلت في الكود المرفق


تحياتي






__________________
النسخة الثانية من ابلود بلس قريبا جدا :
+ شريط مئوي لرفع الملفات
+ دعم اكثر من سيرفر لرفع الملفات Multi-Server
+ مكتبة ملفات مؤرشفة
Egyptechno غير متواجد حالياً   قديم 04-08-2006, 09:56 AM
رد مع اقتباس