PDA

View Full Version : عدم دسترسی به حذف کردن یک رکورد



Mohsen.
جمعه 26 آبان 1391, 14:27 عصر
سلام دوستان
من الان روی سرور میتوم روی رکوردها عملیات insert,update رو انجام بدم. اما وقتی میخوام رکوردی رو delete کنم میگه عدم دسترسی!!!

DELETE command denied to user 'u459616975_root'@'10.1.2.17' for table 'p5'
چی کار باید بکنم؟

mohsen6500
جمعه 26 آبان 1391, 15:20 عصر
سلام
حالت کلی حذف به این صورت هستش که برای هر رکوردی یک آی دی منحصر به فرد دارم پس :

$id = $_GET['id'];
$result = mysql_query("DELETE FROM `MyTable` WHERE `id` = '$id' ");
if($result==true)
echo 'OK!';
else
echo 'NOT OK!';
موفق باشید

Mohsen.
جمعه 26 آبان 1391, 16:06 عصر
من هم به همین صورت عمل میکنم:


if($act=='remove'){
$query="DELETE FROM `aptana`.`p5` WHERE `p5`.`id` = ".$id.";";
$result=mysql_query($query);
}

MMSHFE
جمعه 26 آبان 1391, 18:52 عصر
درمورد دادن سطح دسترسي و دستور GRANT توي MySQL تحقيق كنيد.

Mohsen.
جمعه 26 آبان 1391, 20:26 عصر
ممنون
الان با کد زیر مثلا من دسترسی رو روی all قرار دادم؟

GRANT ALL ON db1.* TO 'jeffrey'@'localhost';
باید کجا بزارم این کد رو؟

azowghi
جمعه 26 آبان 1391, 21:34 عصر
سلام دوست عزیز

اینطوری حذف رو انجام بده:


if($act=='remove'){

mysql_select_db('aptana');
$query="DELETE FROM `p5` WHERE id = '".$id."' ";
$result=mysql_query($query);
}

Mohsen.
جمعه 26 آبان 1391, 21:43 عصر
ممنون از azowghi درست شد. در واقع من فبلا جدول رو انتخاب کرده بودم.
ولی هنوز من در مورد دستور GRANT سوال دارم.


GRANT ALL ON db1.* TO 'jeffrey'@'localhost';
باید کجا بزارم این کد رو؟

MMSHFE
جمعه 26 آبان 1391, 23:08 عصر
اين يك كوئري هست كه بايد توي phpMyAdmin اجرا كنيد (يا از قسمت Privileges بصورت ويژوال انجام بدين). البته اگه كنترل پانلتون cPanel هست، توي قسمت ويرايش ديتابيسهاي MySQL ميتونيد كاربر رو انتخاب كرده و دسترسيها رو براش تنظيم كنيد.

Mohsen.
شنبه 27 آبان 1391, 00:07 صبح
خیلی ممنون
یک سوال دیگه هم دارم
من الان به دلیل نداشتن فیلدی که خاصیت کلید رو داشته باشه یک فیلد id به جدولم اضافه کردم.
اما هر وقت کاربر میخواد یک رکورد جدید ثبت کنه باید خودش یک id منحصربفرد بده که غلطه.
میخوام فیلد id خودش در صورت ایحاد یک رکورد جدید, مقداردهی خودکار بشه. آیا امکانپذیره؟؟

MMSHFE
شنبه 27 آبان 1391, 20:12 عصر
بله امکان مقداردهی خودکار وجود داره، کافیه اون فیلد رو Auto Increment کنید و موقع درج رکورد جدید، اون فیلد رو مقداردهی نکنید تا خودش بطور خودکار شماره گذاری بشه.
موفق باشید.