เขียนโค๊ด msg แต่มันไปขึ้นอีกหน้านึงที่เป็นหน้าเปล่าๆ กรณีเดียวกับ ลิงค์ นี้เลยค่ะเข้าไปดูแล้วเหมือนกันแป๊ะ แต่พอลองทำดู (ทำทุกวิธีที่เค้าแนะนำแล้ว)
หุหุ ไม่มีใครช่วยหนูเลยหรอออเนี่ยยย
Date :
2011-01-08 13:19:04
By :
fuang
Code (PHP)
if($result)
{
echo "เพิ่มข้อมูลสำเร็จ<body bgcolor = #F5F5DC></body><br>";
mysql_close($link);
}
น่าจะใส่ตรงนี้น่ะครับ
Date :
2011-01-08 14:37:01
By :
webmaster
ก้อเหมือนเดิมค่ะ พี่ mr.win ทำไงต่อคะ แนะนำหน่อยค่ะ
Date :
2011-01-08 15:27:16
By :
fuang
ช่วยด้วยยยยยยยยยยยยยยยยยยยยยยยยยยยยยยยย
Date :
2011-01-10 11:15:33
By :
fuang
Code (PHP)
<!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=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="test2.php">
<label for="textfield"></label>
<input type="txt" name="txt" id="txt" />
<input type="submit" name="button" id="button" value="Submit" />
</form>
</body>
</html>
test2.php
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
if(empty($_POST['txt']) and $_POST['txt'] == ''){
echo "<script>alert('คุณกรอกข้อมูลไม่ครบ'); history.back();</script>";
/*echo "<script>body onload=\"window.alertalert('คุณกรอกข้อมูลไม่ครบ'); history.back();\"</script>";*/
}else{
echo "ข้อมูลที่คุณกรอกมาคือ : ".$_POST['txt'];
}
?>
Date :
2011-01-10 11:54:17
By :
ไวยวิทย์
ขอบคุณมากค่ะที่ช่วย เด๋วจะลองทำดูนะคะ
Date :
2011-01-10 13:10:44
By :
fuang
มันก้อยังคงเป็นเหมือนเดิมค่ะ ขอบคุณมากๆนะคะ มีใครพอช่วยได้อีกบ้างมั้ยคะ หนูอ่ะมือใหม่โครตๆ
Date :
2011-01-10 13:24:02
By :
fuang
ไม่มีใครทราบเลยหรอคะ
Date :
2011-01-11 09:17:11
By :
fuang
ตายกลางทางแหงๆ หุหุ
Date :
2011-01-11 15:56:21
By :
fuang
ตัวอย่างที่ผมเขียนผมว่ามันก็น่าจะใช้ได้แล้วหน่ะครับเพราะ
echo "<script>alert('คุณกรอกข้อมูลไม่ครบ'); history.back();</script>";
/*echo "<script>body onload=\"window.alert('คุณกรอกข้อมูลไม่ครบ'); history.back();\"</script>";*/
ตรงนี้ผมก็ก๊อปจากของคุณเลย มันก็ alert ได้
Date :
2011-01-11 16:35:43
By :
ไวยวิทย์
หนูทำได้แล้วก้อ alert ค่ะ แต่พอคำสั่งนี้ if($name == "" || $lable == "" || $category == "" )
{
echo "<script>alert('คุณกรอกข้อมูลไม่ครบ'); history.back();</script>";
//echo "<script>body onload=\"window.alertalert('คุณกรอกข้อมูลไม่ครบ'); history.back();\"</script>";
//echo '<meta http-equiv="refresh" content="0" url="http://localhost/Add_newmember.php" >';
//exit();
}
มันมาอยู่ใน else แล้ว มันกลับไปขึ้นอีกหน้านึง แทนที่มันจะขึ้นหน้า add_newmember หนูไม่เข้าใจตรงนี้ค่ะ
Date :
2011-01-13 10:20:21
By :
fuang
สรุปตอนนี้ได้แล้วหรือยังคะ เรื่อง alert();
Date :
2011-01-13 10:39:15
By :
ultrasiam
alert(); ได้แล้วค่ะ แต่ไปขึ้นอีกหน้านึงที่มันเป็นหน้า เปล่าๆ แต่หนูอยากให้มันขึ้นหน้า add_newmember อ่ะค่ะ
อยากให้ขึ้นหน้านี้
แต่มันกลับขึ้นหน้าเปล่าๆนี่ค่ะไม่เข้าใจตรงนี้ค่ะ
Date :
2011-01-13 10:53:57
By :
fuang
เป็นเพราะ if ($send == null){...}else{...} ค่ะ
คุณเขียน HTML ไว้ใน if ดังนั้นพอมันเข้าเคสที่ else จึงเป็นแค่หน้าเปล่า ๆ ค่ะ
ลองเขียน html ให้เสร็จก่อนแล้วค่อย เช็ค if นะคะ
Date :
2011-01-13 11:01:21
By :
ultrasiam
ขอบคุณมากค่ะ พี่ ultrasiam ไม่ได้พี่หนูคงแย่ ขอบคุณมากจริงๆค่ะ
Date :
2011-01-13 11:17:24
By :
fuang
พี่คะมีอีกเรื่องนึง คือพอ msg box มันมาขึ้นที่หน้า add_newmember แล้ว พวกข้อความ "เพิ่มข้อมูลสำเร็จ" มันตามมาขึ้นในหน้าเดียวกันด้วย แต่ปกติมันต้องขึ้นอีกหน้านึง ต้องทำไงอ่ะค่ะ เด๋วเอารูปให้ดูนะคะ
แต่ปกติมันจะไปขึ้นอีกหน้านึงค่ะ แต่ตอนนี้ย้าย if
<?
if ($send == null){
?>
<?}
else
{
if($name == "" || $lable == "" || $category == ""){
echo"<body onload=\"window.alert('คุณกรอกข้อมูลไม่ครบ'); return history.back();\">";
//echo "<script language='javascript'>alert('คุณกรอกข้อมูลไม่ครบ'); history.back();</script>";
//echo "<script>alert('คุณกรอกข้อมูลไม่ครบ'); history.back();</script>";
exit(); }
มาอยู่ตรงนี้อ่ะค่ะ รบกวนอีกครั้งนะคะ
Date :
2011-01-13 11:26:03
By :
fuang
^ ^ ว่ากันตามกระบวนงานนะคะ
คุณสร้างฟอร์มสำหรับบันทึกข้อมูล ซึ่งทั้ง form และ source อยู่ใน file เดียวกัน ซึ่งก็คือ add_newmember
ดังนั้น สิ่งแรกที่ต้องทำคือ เช็คว่า มีการ submit กดบันทึก หรือไม่ เพื่อตรวจสอบว่า จะบันทึกข้อมูลลงฐานข้อมูลเมื่อใด
คุณจึงใช้ if ($send == null) ถ้า == null ก็แสดงว่ายังไม่บันทึก แสดงฟอร์มปกติ ถ้า != null แสดงว่า กดบันทึก ก็บันทึกลงฐานข้อมูล ซึ่งก็คือคำสั่งที่อยู่ใน else
ทีนี้คุณต้องการตรวจสอบว่า user กรอกข้อมูลมาครบหรือไม่ ถ้าไม่ครบ alert("คุณกรอกข้อมูลไม่ครบ") แล้วกลับมาที่หน้า form ซึ่งคุณทำได้แล้วแต่แรก เพียงแต่คุณไม่ต้องการให้แสดงหน้าว่างเปล่าเท่านั้น โอเค ก็เลยแนะนำให้คุณ แสดง HTML ก่อนแล้วค่อยเช็ค alert()
ส่้วนกรณีบันทึกข้อมูลสำเร็จแล้วนั้น จะแนะนำดังนี้
ง่าย ๆ เลยไม่ต้องคิดอะไรมาก เพิ่มไฟล์สำหรับแสดงข้อความนี้ แล้วสั่ง redirect ไปซะ
หรือ เอา HTML ไปใส่ไว้ทั้งใน if และ else
หรือเช็คค่าว่างก่อน submit
จริง ๆ แล้วมันมีอีกหลายวิธีมาก
ลองพิจารณาดูนะคะ ^__^
ประวัติการแก้ไข 2011-01-13 13:08:29
Date :
2011-01-13 13:06:45
By :
ultrasiam
ขอบคุณอีกครั้งนะคะ ^^
Date :
2011-01-13 16:21:17
By :
fuang
Load balance : Server 02