|
|
|
ช่วยน่อยครับผมมีปัญหาเกี่ยวกับ MySql อ่ะ อยากจะให้ช่วยว่าผมเขียนผิดป่าว |
|
|
|
|
|
|
|
คือเวลาคลิกปุ่ม Submit แล้วมันจะส่งข้อมูลที่แก้ไขไปที่ไฟล์ editorder2.php แล้วก่อนทำการ update ลงฐานข้อมูล พอ update เสร็จมันก็จะไปที่หน้า main.php ทันที
ปัญหาคือ : พอ update เสร็จ แล้วก็ไปดูข้อมูลมันเป็นเหมือนเดิมอะเหมือนมันไม่ update อ่ะ จะให้ช่วยดูว่าผมเขียนผิดตรงไหน คือจะรีบไปส่งครูอ่ะตอนเปิดเทอมอะ
connect.php
<?
$host="localhost";
$user="538569";
$pw="035647212";
$dbname="538569";
$c = mysql_connect($host,$user,$pw);
if (!$c) {
echo "<h3>ไม่สามารถติดต่อฐานข้อมูลได้</h3>";
exit();
}
?>
editorder.php
<?
include "chksession.php";
include "function.php";
include "connect.php";
$id=$_GET[id];
$sql="select * from tb_order where id='$id' ";
$result=mysql_db_query($dbname,$sql);
$record=mysql_fetch_array($result);
$username=$record[username];
$url=$record[url];
$name=$record[name];
$email=$record[email];
$tel=$record[tel];
$address=$record[address];
$detail=$record[detail];
$bid=$record[bid];
?>
<?
$out=$_GET[out];
if($out!="") {
if($out=="1") {
echo "<h3>ERROR : กรุณากรอกข้อมูลที่มี * ให้ครบนะครับ<h3>";
exit();
}elseif($out=="2") {
echo "<h3>ERROR : รูปแบบอีเมลที่กรอกไม่ถูกต้องนะครับ </h3>";
exit();
}elseif($out=="4") {
echo "<h3>ไม่สามารถสั่งซื้อสินค้าได้</h3>";
exit();
}elseif($out=="3") {
echo "<h3>username นี้ไม่มีในระบบ</h3>";
exit();
}
}
?>
<form id="form1" name="form1" method="post" action="editorder2.php">
<table width="200" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top"><TABLE width="601" CELLSPACING="2">
<TR>
<TD width="344"><B>Username :</B> </TD>
<TD width="245"><input name="user" type="hidden" id="user" value="<?=$username?>" /> <?=$username?></TD>
</TR>
<TR>
<TD><B>URL : </B></TD>
<TD><input name="url" type="text" id="url" value="<?=$url?>"> <span class="h">* </span></TD>
</TR>
<TR>
<TD><B>ชื่อ - สกุล :</B> </TD>
<TD><input name="user" type="hidden" id="name" value="<?=$name?>" /><?=$name?> <span class="h">* </span></TD>
</TR>
<TR>
<TD><B>อีเมล : </B></TD>
<TD><INPUT NAME="email" TYPE="text" id="email" value="<?=$email?>" SIZE="26"> <span class="h">* </span></TD>
</TR>
<TR>
<TD><B>โทรศัพท์ : </B></TD>
<TD><INPUT NAME="tel" TYPE="text" id="tel" value="<?=$tel?>" SIZE="26"></TD>
</TR>
<TR>
<TD><B>ที่อยู่ติดต่อ : </B></TD>
<TD valign="top"><TEXTAREA NAME="address" COLS="35" ROWS="3" id="address"><?=$address?>
</TEXTAREA>
<span class="h">*</span></TD>
</TR>
<TR>
<TD><B>รายละเอียด <span class="h">เช่น ขนาด สี ที่ต้องการ </span> : </B></TD>
<TD valign="top"><textarea name="detail" cols="35" rows="3" id="detail"><?=$detail?></textarea>
<span class="h">*</span></TD>
</TR>
<TR>
<TD><B>ราคาประมูลสูงสุด <span class="h">สำหรับ Ebuy</span> : </B></TD>
<TD><INPUT NAME="bid" TYPE="text" SIZE="26" id="bid" value="<?=$bid?>"></TD>
</TR>
<TR>
<TD> </TD>
<TD><INPUT TYPE="Submit" value="Submit"> <INPUT TYPE="Reset" value="Reset"></TD>
</TR>
</TABLE></td>
</tr>
</table>
</form>
editorder2.php
<?
$username=$_POST[user];
$url=$_POST[url];
$name=$_POST[name];
$email=$_POST[email];
$tel=$_POST[tel];
$address=$_POST[address];
$detail=$_POST[detail];
$bid=$_POST[bid];
$date=date("Y-m-d");
if ($email=="" or $tel=="" or $url=="" or $address=="" or $detail=="") {
header( "Location: editorder.php?out=1"); exit();
}
include "function.php";
if (!checkemail($email)) {
header( "Location: editorder.php?out=2"); exit();
}
include "connect.php";
$sql="update tb_order set url='$url', email='$email', tel='$tel', detail='$detail', address='$address', bid='$bid' where username='$username' ";
$result=mysql_db_query($dbname,$sql);
if ($result) {
header( "Location: main.php"); exit();
} else {
header( "Location: editorder.php?out=4"); exit();
}
mysql_close();
?>
Tag : PHP, MySQL, HTML/CSS, JavaScript
|
|
|
|
|
|
Date :
2012-10-26 09:37:11 |
By :
nine9517 |
View :
1073 |
Reply :
13 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คุณใช้โปรแกรมอะไรเป็นเชิฟเวอร์จำรองครับ
|
|
|
|
|
Date :
2012-10-26 09:45:19 |
By :
tontan1998 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถ้าใช้XAMPP 1.8 ให้เปลี่ยนmysql_db_query เปลี่ยนไปใช้ mysql_select_db แล้วตามด้วย mysql_query
ไม่รู้ว่าตอบถูกหรือไม่ครับ php เวชั่นใหม่ ตั้แต่ 5.3 ขึ้นไปจะใช้mysql_db_queryไม่ได้ ครับ
|
ประวัติการแก้ไข 2012-10-26 09:51:58
|
|
|
|
Date :
2012-10-26 09:50:30 |
By :
tontan1998 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลอง echo $sql แล้วเอาข้อความที่ได้ไปวางลงใน phpmyadmin ดูครับ
|
|
|
|
|
Date :
2012-10-26 10:03:24 |
By :
adaaugusta |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ฟ้อง error อะไรหรือครับ ดู code error หน่อยครับ
|
|
|
|
|
Date :
2012-10-26 15:38:55 |
By :
veeitdata5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลอง echo $sql มาดูก่อนครับ แล้ว copy ไปวางที่ phpMyAdmin เพื่อลอง run statement ครับ
|
|
|
|
|
Date :
2012-10-30 13:52:15 |
By :
คนธรรมดา |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<? require('conn_re.php'); ?>
<?
echo $no_id = $_GET['no_id']; // auto run number 0 1 2 3....
echo "<br>";
echo $start=$_GET['start']; //เริ่มรับราชการ
echo $brance=$_GET['brance'];
echo $uni=$_GET['uni'];
echo $on=$_GET['on'];
echo $dp=$_GET['dp'];
echo $land=$_GET['land'];
echo $sub_st=$_GET['sub_st'];
echo "<br>";
echo $idp = $_GET['_id'];
echo "<br>";
echo $np = $_GET['_n'];
echo "<br>";
echo $status = $_GET['status'];
echo "<br>";
echo $level = $_GET['level'];
echo "<br>";
echo $grp = $_GET['_grp'];
echo "<br>";
//$start = $_REQUEST[start];
echo $type_ss = $_GET['type_ss'];
echo "<br>";
echo $st_now = $_GET['st_now'];
$passhrd = $_GET[passhrd];
$connect = mysql_connect($hostname, $user, $password) or die("ติดต่อฐานข้อมูลไม่ได้");
$db = mysql_select_db($dbname) or die("เลือกฐานข้อมูลไม่ได้");
echo $sql = "UPDATE admin SET mail_pwd='$idp',name='$np',status='$status',level='$level',type_status='$type_ss',group='$grp',status_now='$st_now' WHERE admin.no='$no_id'";
echo $dbquery = mysql_query($sql);
mysql_close();
พี่ครับ ช่วยทีครับผม มันไม่ update ในฐานข้อมุลแต่ไม่ขึ้นอะเไรเลยครับผมหามาหลายวันแล้วครับ ช่วยทีคับ
|
|
|
|
|
Date :
2013-01-15 14:03:44 |
By :
แว่นครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
UPDATE admin SET mail_pwd='chomrajดกหดห',name='นาย จอมรัฐ พัฒนศรดกหด',status='อาจารย์ดกห',level='',type_status='พนักงานมหาวิทยาลัยดกห',group='เงินงบประมาณ',status_now='ศึกษาต่อต่างประเทศ' WHERE admin.no='11'
อันนี้คือตัวที่ echo $sql คับผม
|
|
|
|
|
Date :
2013-01-15 14:05:01 |
By :
แว่นครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แปลกใจ ทำไมไม่มี error โชว์ ด้านบนขึ้น error_reporting(); อะไรแบบนี้บ้างรึเปล่าครับ
|
|
|
|
|
Date :
2013-01-15 14:19:00 |
By :
Ex-[S]i[L]e[N]t |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แต่พอ ใช้่คำสั่ง insert ลง database นะครับ แต่ถึงขึ้นมาแก้ไขไม่ update เลยครับ งง มากทั้งที่แต่ก่อนผมก็เขียนอย่างนี้นะครับ งง ถามเพ่ือนก็งง เหมือนกันครับ ตั้งแ่ต่อาทิตย์ี่ที่แล้ว แล้วครับ
|
|
|
|
|
Date :
2013-01-15 14:21:57 |
By :
แว่นครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1. ชื่อฟิลด์ในโครงสร้างในฐานข้อมูล ทั้งหลาย mail_pwd name status ฯลฯ กับ Code ที่เขียนตรงกันชัวร์หรือเปล่าครับ
2. ตัวอ้างอิง Record ที่ทำการแก้ไข admin.no เป็น id หลักหรือเปล่าครับ (ผมเคยเจอเคสที่ไปอ้างอิงให้ update ฟิลด์ที่ไม่ใช่ id หลัก มันก้ไม่อัพให้ ไม่รู้เกี่ยวป่าว ลองดู)
3. ลองปิดด้วย $sqlquery=mysql_db_query($dbname, $sql); อีกอัน
4. Code (PHP)
$sql = "UPDATE admin SET mail_pwd='$idp',name='$np',status='$status',level='$level',type_status='$type_ss',group='$grp',status_now='$st_now' WHERE admin.no='$no_id'";
echo $sql;
$dbquery = mysql_query($sql);
echo $dbquery ;
//ตอนรันใช้แบบนี้ดีกว่าอ่ะ จะได้ไม่งง
|
ประวัติการแก้ไข 2013-01-15 14:33:08 2013-01-15 14:35:27 2013-01-15 14:38:39
|
|
|
|
Date :
2013-01-15 14:30:51 |
By :
apisitp |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณคับ เดี๋ยวผมลองก่อนนะครับ ได้ผลยังไงจะรายงานครับผม
|
|
|
|
|
Date :
2013-01-15 14:38:09 |
By :
แว่นครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตรวจสอบแล้วคับ ถูกต้องครับ ผม copy จาก field database เลยครับ แล้วก็ทดสอบลองแก้ไขตรงจาก database สามารถแก้ไขได้คับผม
เรียงกันตามปกติครับ ตรวจสอบช่องว่างของ field database ก็ไม่มีครับ ตอนนี้กำลังจะเอา database ไปใส่ ที่ server อื่น หมดจิงๆ คับ ขอบคุณคำแนะนำคับผม
|
|
|
|
|
Date :
2013-01-15 14:50:02 |
By :
แว่นครับ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|