مشکل در آپدیت کردن امتیازات آنلاین !!
#1
سلام . من طبق آموزش های همین سایت پیش رفتم ولی نتونستم امتیاز هارو اپدیت کنم . نمیدونم مشکل کجای کاره . تو بازی وارد نکردم فعلا تو همون هاست درگیر هستم .
اسم رو با یک امتیازی ثبت میکنم یعنی مشکلی در ثبت امتیاز و دریافتش ندارم ولی وقتی میخوام همونو اپدیت کنم مینویسه :
There was a problem saving your score. Please try again later.
اینم کد پی اچ پی برای اپدیت . نمیدونم مشکل از کجاست .
کد:
<?php
$db = "************";//Your database name
$dbu = "*************";//Your database username
$dbp = "************";//Your database users password
$host = "***********";//MySQL server - usually localhost
$dblink = mysql_connect($host,$dbu,$dbp);
$seldb = mysql_select_db($db);
If(isset($_GET['name']) && isset($_GET['score'])){
    //Lightly sanitize the GETs To prevent SQL injections and possible XSS attacks
    $name = strip_tags(mysql_real_escape_string($_GET['name']));
    $score = strip_tags(mysql_real_escape_string($_GET['score']));
    $sql = $sql = mysql_query("UPDATE Game_scores SET score='$score' WHERE name='$name'");
    If($sql){
         //The query returned TRUE - now do whatever you like here.
         echo 'Your score was saved. Congrats!';
    }Else{
         //The query returned FALSE - you might want To put some sort of error reporting here. Even logging the error To a text file is fine.
         echo 'There was a problem saving your score. Please try again later.';
    }
}Else{
    echo 'Your name or score wasnt passed in the request. Make sure you add ?name=NAME_HERE&score=1337 To the tags.';
}
mysql_close($dblink);//Close off the MySQL connection To save resources.
?>
  پاسخ


 سپاس شده توسط:
#2
دوستان انصافا کسی نمیدونه ؟
  پاسخ


 سپاس شده توسط:
#3
باسلام

اسم جدول دیتابیس رو به چه نامی ثبت کردید ؟
  پاسخ


 سپاس شده توسط: orache ، Mojtaba
#4
والا من از پی اچ پی و دیتابیسو اینجا چیزی نمیدونم ولی برای ساخت تیبل اینو گذاشتم
CREATE TABLE `Game1_scores` (
`id` INT NOT NULL AUTO_INCREMENT ,
`name` VARCHAR( 20 ) NOT NULL ,
`score` INT NOT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = InnoDB;
.
.
اسم دیتابیسم هم hs هست
  پاسخ


 سپاس شده توسط:
#5
سلام
خوب شما CREATE TABLE `Game1_scores` کردین، یعنی اسم جدول رو Game1_scores گذاشتید، ولی موقع آپدیت کردن نوشتید UPDATE Game_scores SET... یعنی دارید جدول Game_scores رو که احتمالاً وجود نداره آپدیت می‌کنید.
معجزات طبیعت هایی هستند که با آن‌ها مأنوس نشده‌ایم
و طبیعت معجزه‌ایست که با آن انس گرفته‌ایم
علی صفایی حائری
  پاسخ


 سپاس شده توسط: amirho24 ، orache
#6
سلام عزیز مطمینی طبق آموزش ها پیش رفتی ؟ چون تو آموزش های آقا مجتبی برا اپدیت چنین استفاده نمیکردیم شما سایت w3schools رو تو گوگل بزن بعد قسمت php بعد توی php دیتابیس رو پیدا کن و آموزش اپدیت رو ببین تشکر
زکات علم ، آموزش دادن ان است از امام صادق (ع)
 
 
  پاسخ


 سپاس شده توسط: orache
#7
خب بنده که بهتون گفتم ، خدا پدر و مادرتو خیر بده ، اگر توی یک فایل یک چیزی رو تغییر میدید باید توی بقیه هم تغییر بدید !
الان به قول آقا مجتبی ، شما جدولی به نام Game1_scores ساختید !
اما در فایل آپدیت اسم جدول Game_scores هست .

این فایل رو جایگزین کنید و تست کنید و مراتب رو بنویسید :
بعد من داخل ارور بالا ی چیزیم فهمیدم ، اونجا هم به شما گفته شده که ی چیزی توی مقادیر ارسالی درست نیست و بعد گفته بعدا دوباره امتحان کنید ( انگاری اون فکر کرده ی همچین جدولی بوده در حالی که نبوده بخاطر همین ارور این بوده ! ) باز این کد رو بررسی کنید بگید چه خبره تا ببینم دقیقا مشکلش چیه


کد:
<?php
$db = "************";//Your database name
$dbu = "*************";//Your database username
$dbp = "************";//Your database users password
$host = "***********";//MySQL server - usually localhost
$dblink = mysql_connect($host,$dbu,$dbp);
$seldb = mysql_select_db($db);
If(isset($_GET['name']) && isset($_GET['score'])){
   //Lightly sanitize the GETs To prevent SQL injections and possible XSS attacks
   $name = strip_tags(mysql_real_escape_string($_GET['name']));
   $score = strip_tags(mysql_real_escape_string($_GET['score']));
   $sql = $sql = mysql_query("UPDATE Game1_scores SET score='$score' WHERE name='$name'");
   If($sql){
        //The query returned TRUE - now do whatever you like here.
        echo 'Your score was saved. Congrats!';
   }Else{
        //The query returned FALSE - you might want To put some sort of error reporting here. Even logging the error To a text file is fine.
        echo 'There was a problem saving your score. Please try again later.';
   }
}Else{
   echo 'Your name or score wasnt passed in the request. Make sure you add ?name=NAME_HERE&score=1337 To the tags.';
}
mysql_close($dblink);//Close off the MySQL connection To save resources.
?>
  پاسخ


 سپاس شده توسط: orache
#8
درسته . درست شد . مشکل همین نام بود . فکر نمیکردم باید تغییر بدم ولی حواسم نبود که تو نرم افزار آقای مجتبی 2 تا فایلو درست میکرد ولی فایل سوم رو کپی کردم از روی آموزش و تغییر نام ندادمش
ممنون
حالا باید برم سر وقت کانس . کلی هم اونجا باید گیر کنم احتمالا 4
  پاسخ


 سپاس شده توسط:
#9
من این آموزش هارو ندیدم ولی به نظر خیلی خیلی ساده میاد !
موفق و پیروز باشید
  پاسخ


 سپاس شده توسط: orache
#10
میگم که من برنامه نویسی سمت سرور بلد نیستم . بعدا باید یاد بگیرم
راستی همه ی اینکار ها توی سایت مشخصه یعنی فقط یه نفر ادرس سایت رو بلد باشه میتونه هم امتیاز جدید بسازه و هم امتیاز هارو تغییر بده یعنی نیازی به دونستن هیچ چیزی نیست . ایا میشه جلوی اینکار رو گرفت ؟
  پاسخ


 سپاس شده توسط:


موضوع‌های مشابه…
موضوع نویسنده پاسخ بازدید آخرین ارسال
Information پرداخت درون برنامه مایکت کوردوا ya mahdi 0 230 1404/1/17، 05:43 عصر
آخرین ارسال: ya mahdi
  نحوه خروجی اندروید کوردوا ya mahdi 0 179 1404/1/11، 04:06 عصر
آخرین ارسال: ya mahdi
Wink حل شده مقادير لازم در environment variable ᔕinaᗪehghani 24 11,596 1403/10/23، 12:10 صبح
آخرین ارسال: Tggi
  تپسل .....فروشگاه Hamidreza 3 1,932 1403/10/22، 11:57 عصر
آخرین ارسال: Tggi
  خروجی اندروید با Intel xdk ya mahdi 0 130 1403/8/25، 02:08 عصر
آخرین ارسال: ya mahdi

پرش به انجمن: