Reset Password root MySQL (Windows)

June 1st, 2009

วันก่อนอยากเปลี่ยน Password root ของ Mysql ก็เลยไปเปลี่ยนเอาดื้อๆๆเลย ผ่าน tools navicate อิอิ แล้วมานึกขึ้นได้ว่ามันเป็น password ที่เหมือนจะผ่าน MD5 ก็เลยไปหาวิธีเปลี่ยนแบบที่เค้าทำกัน งิงิ ได้ตามนี้เลยครับ ก็ได้อาจารย์กู แหละครับที่ไปช่วยหาข้อมูลมาให้

1. stop MySQL server โดยสั่งใน Services หรือ พิมพ์ net stop mysql ใน Command Prompt

2. start MySQL server โดยใส่ออพชัน –skip-grant-tables

mysqld-nt –skip-grant-tables

ถ้าสตาร์ทไม่ขึ้น อาจต้องใส่ออพชัน –defaults-file เข้าไปด้วย

mysqld-nt –skip-grant-tables –defaults-file=”C:\WINDOWS\my.ini”

3. connect เข้า MySQL ด้วย user root

mysql -u root

4. ตั้งพาสเวิร์ดใหม่ให้ root โดยพิมพ์คำสั่ง

mysql> use mysql;
mysql> update user set password=PASSWORD(“newpassword”) where user=’root’;
mysql> flush privileges;
mysql> quit

5. stop MySQL server อีกรอบ

6. start MySQL server ตามปกติ แล้วลองเทสต์ด้วยการล็อกอินเป็น root

mysql -u root -p

แปลง 1 ให้เป็น 00001

May 28th, 2009

เรื่องของเรื่องของผมคือ ผมต้องการให้ค่าของผมที่ได้ สมมติ 1 ไปเป็น 00001 แบบว่าผมก็ไม่ค่อยได้เล่น php ก็เลยงง(ถ้าเป็น Java สบาย อิอิ) ก็เลยไปเจอค่ำสั่งนี้เข้า

sprintf(รูปแบบ string, ตัวแปร [มีหลายตัวได้])

และนี่ก็วิธีใช้คำสั่งครับ

<?php
$value = 1;
echo $value.” ไปเป็น “.sprintf(“%05d”, $value).”;
?>

ผลลัพธ์ที่ได้ ก็คือ 00001

เห็น แบบนี้แล้ว คงเข้าใจได้ในทันทีละครับ ว่าฟังก์โค้ดนี้ จะทำการแปลงค่าตัวเลขใดๆ ให้ออกมาในรูปแบบของตัวเลข 5 หลัก โดยมีเลข 0 นำหน้า จนกว่าจะครบ 5 หลัก
เช่น รับค่า 1 ที่เป็นเลขหลักเดียวเข้ามา มันก็จะเติม 0 นำหน้าไป 4 ตัว ให้เป็น 00001 เพื่อให้ครบ 5 หลัก แต่ถ้าเกิดรับค่า 10 เข้ามา มันก็จะเติมเลข 0 ไปแค่ 3 ตัว เพื่อให้ครบ 5 หลัก
จุดสำคัญของฟังก์ชันนี้อยู่ที่ %05d ครับที่เป็นตัวบอกกับฟังก์ชันว่า ให้แปลง input ที่ได้ ให้อยู่ในรูปแบบของตัวเลข 5 หลักที่ว่า ความหมายของคำว่า %05d ก็คือ ค่าตัวเลขฐาน 10 จำนวน 5 หลัก โดยมีเลข 0 นำหน้านั่นเอง

กระจ่างเลยที่นี่ อิอิ

php ดึงข้อมูลจาก db ของphpbb

May 26th, 2009

ลองดูน่ะครับ

<html>
<body>
<?php
$dbhost = ‘localhost’;
$dbuser = ‘********;
$dbpass = ‘********’;

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die (‘Error connecting to mysql’);
mysql_query(“SET NAMES UTF8”); // เพื่อให้ดึงข้อมูลให้แสดงภาษาไทยครับ

$dbname = ‘xxxxxxxi’;
mysql_select_db($dbname);
$query = "SELECT topic_id, topic_title FROM phpbb3_topics ORDER BY topic_time";
$result = mysql_query($query);

while($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
echo "<a href=http://www.mooaoun/phpBB3/viewtopic.php?t=$topic_id\" >{$row[‘topic_title’]} </a><br>" ;
}
mysql_close($conn);

?>
</body>
</html>