 |
|
โค๊ด error ผมก็เขียนตามหนังสือแล้สนะครับ ตรวจสอบหลายรอบแล้วก็ไม่หายช่วยดูหน่อยครับ
+++++++++++++++++++++++++error+++++++++++++
Warning: mysqli_connect() [function.mysqli-connect]: (28000/1045): Access denied for user 'uit'@'localhost' (using password: YES) in C:\AppServ\www\uit\add_question.php on line 58
Warning: mysqli_select_db() expects parameter 1 to be mysqli, boolean given in C:\AppServ\www\uit\add_question.php on line 59
Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Krasnoyarsk' for '7.0/no DST' instead in C:\AppServ\www\uit\add_question.php on line 65
Warning: mysqli_query() expects parameter 1 to be mysqli, boolean given in C:\AppServ\www\uit\add_question.php on line 70
ส่งกระทู้เข้าสู่เว็บบอร์ดไม่สำเร็จ เนื่องจากเกิดข้อผิดพลาดบางอย่าง
Warning: mysqli_close() expects parameter 1 to be mysqli, boolean given in C:\AppServ\www\uit\add_question.php on line 85
+++++++++++++++++++++++code++++++++++++++++++++++++
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-874" />
<title>ตั้งกระทู้</title>
</head>
<body>
<?php
if(isset($_POST["send"])) //ลบช่องว่างออกจากข้างหน้าและข้างหลังที่ฟิลล์ส่งเข้ามา
{
foreach ($_POST as $key =>$value)
$_POST[$key] = trim($value);
if (validate_form($err))
process_form();
else
{
echo '<font color="red"><b>เกิดข้อผิดพลาด</b><br>';
echo $err . "</font><br>";
echo '<input type="button" value="กลับไปแก้ไข"
onclick="history.back();">';
}
}
else { show_form(); } //ฟังก์ชั่นที่ใช้ตวจสอบ
function validate_form(&$err) //กำหนดฟิลด์บังคับ(ฟิลด์ที่ห้ามปล่อยวาง)
{
$required = array("name"=>"ชื่อของคุณ","topic"=>"หัวข้อกระทู้",
"detail"=>"รายละเอียดกระทู้");
$err="";
//วนลูปตรวจสอบฟิลล์บังคับทุกฟิลล์
foreach ($required as $field=>$label) {
if($_POST[$field]=="")
$err.="<li>คุณไม่ได้ป้อน<b>$label</b></il>";
}
//ส่งคืนค่าออกไปจากฟิลล์
if($err)
return FALSE; //กรณีมีข้อผิดพลาดในฟอร์ม
else
return TRUE; //กรณีไม่มีข้อผิดพลาดในฟอร์ม
} //จบฟังก์ชั่น validate_form
function show_form() { //ฟังก์ชั่นที่ใช้แสดงฟอร์มสำหรับตั้งกระทู้
echo <<<HTMLBLOCK
<h3>ตั้งกระทู้ใหม่</h3>
<form method="POST" action="{$_SERVER['PHP_SELF']}">
ชื่อของคุณ:<input type="text" name="name" size="20" maxlength="50"><br>
หัวข้อ: <input type="text" name="topic" size="40" maxlength="255"><br>
รายละเอียด:<br>
<textarea col="50" row="5" name="detail"></textarea><br>
<input type="submit" name="send" value="ส่งกระทู้เข้าเว็บบอร์ด">
</form>
<hr><a href=list_questions.php>หน้าหลักของเว็บบอร์ด</a>
HTMLBLOCK;
} //จบฟังก์ชั่น show_form
//ฟังก์ชั่นที่ใช้ประมวลผลฟอร์ม
function process_form(){
$cn=mysqli_connect("localhost","uit","3118");
mysqli_select_db($cn,"webboard_db");
/*ใส่ backslashข้างหน้าตัวอักษร ที่อาจทำให้คำสั่ง sql มีปัญหาเมื่อค่าเหล่านี้ไปแทนลงในคำสั่ง (แต่ถ้าไฟล์php.ini มีการกำหนด magic_quotes_gpc=on ไว้ ก็ไม่ต้องการเรียกใช้ฟังก์ชั่น) */
$topic=addslashes($_POST["topic"]); //-- บรรทัดนี้ --//
$detail=addslashes($_POST["detail"]);
$name=addslashes($_POST["name"]);
//หาวันเวลาปัจจุบัน โดยจัดรูปแบบตามที่ Mysql กำหนด
$now=date("Y-m-d H:i:s");
$ip=$_SERVER["REMOTE_ADDR"];
//เก็บกระทู้ลงฐานข้อมูล
$sql="INSERT INTO questions (qTopic,qDetail,qDate,qName,qIPAddress,qAnswerCount)
Value('$topic','$detail','$now','$name','$ip',0)";
$result=mysqli_query($cn,$sql);
if($result){
/*ฟังก์ชั่น mysqli_insert_idจะให้ค่าของฟิลล์ที่เป็น auto-increment หลังจากรันคำสั่ง sqlล่าสุด*/
$id=mysqli_insert_id($cn);
echo"ส่งกระทู้เข้าสู่เว็บบอร์ดเรียบร้อย<br>";
echo"หมายเลขกระทู้ของคุณคือ{$id}<br>";
echo"<a href=\"show_question.php?id={$id}\">คลิ๊กที่นี</ a>";
echo"เพื่อแสดงกระทู้ของคุณ<br>";
echo"<hr><a href=\"list_questions.php\">หน้าหลักของเว็บบอร์ด</a>";
}
else
echo"ส่งกระทู้เข้าสู่เว็บบอร์ดไม่สำเร็จ เนื่องจากเกิดข้อผิดพลาดบางอย่าง<br>";
mysqli_close($cn); //-- บรรทัดนี้ --//
} //จบฟังก์ชั่นprocess_form
?>
</body>
</html>
Tag : - - - -
|
|
 |
 |
 |
 |
Date :
2009-05-21 12:48:36 |
By :
Super_Pui |
View :
1922 |
Reply :
4 |
|
 |
 |
 |
 |
|
|
|
 |