PDA

View Full Version : گذاشتن رمز برروی root در phpmyadmin (حل شد)



acute.eagle
چهارشنبه 01 خرداد 1392, 16:39 عصر
چه طور میشه با استفاده از php برروی root در phpmyadmin که در لوکال اجرا میشود، رمز گذاشت؟

MMSHFE
چهارشنبه 01 خرداد 1392, 18:31 عصر
در صفحه اصلی phpmyadmin روی گزینه Privileges کلیک کنید. فهرست کاربران رو خواهید دید. ممکنه چند بار کاربر root رو (هربار با یک سرور) ببینید. مثلاً یکبار با 127.0.0.1 و یکبار با localhost
با هرکدوم که phpmyadmin رو باز کردین، اول اون یکی دیگه رو تغییر بدین (مثلاً اگه با localhost/phpmyadmin وارد شدین)، اول 127.0.0.1 یا بقیه (هر چندتا که هست) رو تغییر بدین و آخر از همه localhost رو عوض کنید چون با تغییر رمزش، phpmyadmin از کار میفته. برای تغییر هم روی لینک Edit Privileges سطر مربوطه کلیک کنید و به قسمت Change Password رفته و رمز رو تغییر بدین.
حالا که رمز عوض شده، باید به phpmyadmin هم رمز جدید رو بگیم. برای این کار، به پوشه نصبش (مثلاً C:\wamp\apps\phpmyadmin3.4.9) رفته و فایل config.inc.php رو باز کنید و این خط رو پیدا کرده و تغییر بدین:

$cfg['Servers'][$i]['password'] = '';

acute.eagle
چهارشنبه 01 خرداد 1392, 18:52 عصر
ممنون از جواب شما. من میخوام با استفاده از کد php این کار رو انجام بدم. آیا امکان داره؟

MMSHFE
چهارشنبه 01 خرداد 1392, 19:50 عصر
اول گفتین با phpmyadmin میخواین. اگه با Query میخواین باید از دستور SET PASSWORD استفاده کنید. لینک زیر رو مشاهده کنید:
http://dev.mysql.com/doc/refman/5.0/en/set-password.html

acute.eagle
چهارشنبه 01 خرداد 1392, 20:04 عصر
سوالم رو درست نخوندید.
من در php این دستور رو امتحان کردم اما ارور میده. نمیدونم کدش رو چه جور بنویسم.

MMSHFE
چهارشنبه 01 خرداد 1392, 20:43 عصر
معذرت میخوام ولی هرجور فکر میکنم میبینم سؤالتون رو درست خوندم. شاید شما درست ننوشتین. اصلاً شما چیز زیادی از مشکلتون نگفتین:

چه طور میشه با استفاده از php برروی root در phpmyadmin که در لوکال اجرا میشود، رمز گذاشت؟
کجای این مطلب گفته شما با Query میخواین و این دستور رو امتحان کردین و ارور داده؟ باور کنید درست سؤال پرسیدن خودش یک هنره.
در هر حال خطایی که داده شده رو بگذارین تا ببینیم مشکل از کجاست. ضمناً برای اینکه بتونید این تغییرات رو ازطریق Query انجام بدین، باید یکبار قبلش با کاربر root به MySQL وصل بشین و بعد اقدام به تغییر رمز کنید. بدون وجود یک اتصال صحیح به MySQL، این کوئری اجرا نمیشه.

acute.eagle
پنج شنبه 02 خرداد 1392, 19:08 عصر
اینکه سوال بایستی روشن باشه و سوال من کامل نبود با شما موافقم. همچنین سوال درست برمیگرده به درک و سواد شخص از موضوع!
اما حداقل که به php اشاره کردم. گفتم با استفاده از php . راه دیگه ای به جز استفاده از کوئری در داخل php هست؟
از پاسخ شما ممنونم. و امروز دوباره امتحان کردم و جواب داد. کدشو اینجا میزارم


$con=mysqli_connect("localhost","root");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="SET PASSWORD FOR 'root'@'localhost' = PASSWORD( '12345' )";
if (mysqli_query($con,$sql))
{
echo "password created successfully";
}
else
{
echo "Error creating password: " . mysqli_error($con);
}