Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > ช่วยดูโค๊ดหน่อยค่ะว่าผิดอะไรค่ะ โค๊ดนี้มันไม่ยอมเพิ่มข้อมูลให้ค่ะ มันแจ้งว่า ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมไปแล้ว...



 

ช่วยดูโค๊ดหน่อยค่ะว่าผิดอะไรค่ะ โค๊ดนี้มันไม่ยอมเพิ่มข้อมูลให้ค่ะ มันแจ้งว่า ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมไปแล้ว...

 



Topic : 045513



โพสกระทู้ ( 152 )
บทความ ( 0 )



สถานะออฟไลน์




Code (PHP)
 <?
include "dbconjob.php";	
	 
$date_ = date("Ymd");
$ff = mysql_query("select * from repair ") or die(mysql_error());
$num = mysql_num_rows($ff);
if($num > 0)
{
$lastid_sql = mysql_query("SELECT idrepair FROM repair  WHERE  idrepair LIKE '".$date_."%' ORDER BY idrepair DESC") or die(mysql_error());
$num_cus = mysql_num_rows($lastid_sql);
 
if($num_cus > 0)
{
$last_id = mysql_fetch_row($lastid_sql);
$lastid = $last_id[0];
$str = explode("E",$lastid);
$add_date = $str[0];
$customer_id = $str[1];
$i = $num_cus+1;
$ticket_number=$date_."E".substr("00000".$i,-4,4);
}
else
{
 $i=1;
$ticket_number=$date_."E".substr("00000".$i,-4,4);
}
} else {
 $i=1;

 $ticket_number=$date_."E".substr("00000".$i,-4,4);
}
 
if($_POST["submit"]!="")
{
	$error = 0;
	$computername=$_POST['computername'];
	$repair=$_POST['repair'];
	$cause=$_POST['cause'];
	$namesent=$_POST['namesent'];
	$dept_id=$_POST['dept_id'];
	$datesent=$_POST['datesent'];
	$hardware_oth=$_POST['hardware_oth'];
	$location=$_POST['location'];
	$tel=$_POST['tel'];
	if($computername=="" or $repair=="" or $namesent=="" or $datesent=="") 
			{
				echo "<center><font color='red'>";
				echo "กรุณากรอกข้อมูลที่มี * ให้ครบ<br>";
				echo "<a href='newjob.php'>กลับไปแจ้งซ่อม</a><br>";
				$error = 1;
			}	
					if ($error==0)
					{	
					$check="Select * from repair where computername='$computername' and  status_id=1 or status_id=2";
					$checkqury= mysql_query($check) or die(mysql_error());
 				    $numrows = mysql_num_rows($checkqury); 
					
					if ($numrows ==0)
					{
						for($j=0;$j<count($_POST["hardware"]);$j++)
						{
							if(trim($_POST["hardware"][$j]) != "") 
								{
								 $sql ="INSERT INTO 		repair(idrepair,idcom,computername,repair,cause,hardware,hardware_oth,namesent,dep_id,datesent,location,tel,status_id)";
 								 $sql .="  VALUES ('$ticket_number',NULL,'$computername','$repair','$cause','".$_POST["hardware"][$j]."','$hardware_oth','$namesent','$dept_id','$datesent','$location','$tel','1')"; 
// echo "$sql";
 								 $objQuery = mysql_query($sql) or die(mysql_error());
 								 $str="INSERT INTO  history (com_name,idrepair)";
 								 $str.= " VALUES ('$computername','$ticket_number')";
								 $query=  mysql_query($str) or die(mysql_error());		 	
								echo "ระบบได้ทำการแจ้งซ่อมแล้วค่ะ";   
								echo "<a href='viewjob.php'>ดูที่แจ้ง</a></b></center>"; 
								}				
						 }
						
					}
					else
					{
					    echo "<center><font color='red'>ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมแล้ว</font>";
						echo "<center><font color='red'><a href='viewjob.php'>ไปดูที่แจ้งซ่อม</a></font>";
										
 					 }
 				 } 
}
?>


โค๊ดนี้มันไม่ยอมเพิ่มข้อมูลให้ค่ะ
มันแจ้งว่า ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมไปแล้ว
ทั้ง ๆ ที่ยังไม่ได้มีการแจ้งเข้ามานะค่ะ ช่วยดูหน่อยค่ะ ว่ามันผิดตรงไหน
ขอบคุณมาก ๆ ค่ะ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-07-15 16:38:37 By : Nicorobin View : 1076 Reply : 8
 

 

No. 1



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์


ดูจากโค๊ด นะคับ

ขอแนะนำ

Code (PHP)
$check="Select * from repair where computername='$computername' and  (status_id=1 or status_id=2)"; 



จริงๆ ถ้าwhere ชื่อเครื่องอย่างเดียวไม่ได้หรอคับ -*-

ผิดพลาดประการใดต้องขออภัยด้วยคร๊าฟฟฟ






Date : 2010-07-15 16:53:40 By : birdbird27
 


 

No. 2



โพสกระทู้ ( 648 )
บทความ ( 0 )



สถานะออฟไลน์


ที่มันขึ้น ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมแล้ว
เพราะ $numrows ไม่เท่ากับ 0

ดังนั้นก็น่าจะมาจาก
Code (PHP)
Select * from repair where computername='$computername' and  status_id=1 or status_id=2


ลอง echo $check; ดูว่าค่าที่ได้ถูกไหม
=========================================================================

มันก็เลยได้ record มามากว่า 0 ผมว่า คุณลองศึกษา Logic Boolean ดีๆนะ ดูแล้วน่าจะผิด ตรง or
Date : 2010-07-15 16:54:11 By : 50121680
 

 

No. 3



โพสกระทู้ ( 648 )
บทความ ( 0 )



สถานะออฟไลน์


ผมไม่แน่ใจนะว่า SQL ใช้แบบนี้ได้รึไม่

Code (PHP)
Select * from repair where computername='$computername' and ( status_id=1 or status_id=2 )

Date : 2010-07-15 16:58:38 By : 50121680
 


 

No. 4



โพสกระทู้ ( 152 )
บทความ ( 0 )



สถานะออฟไลน์


ค่ะลองทำอย่างที่คุณ birdbird27 แล้วไม่ได้ค่ะ

แล้วก็ลองเช็ค $check;
ได้ค่ามา Select * from repair where computername='Accstock' and (status_id=1 or status_id=2)
ส่วน $numrows ได้ค่ามาเป็น 0 ค่ะ
ซึ่งไม่ไปเพิ่มในฐานข้อมูลให้นะค่ะ ยังไงช่วยแนะนำนะค่ะ
Date : 2010-07-15 17:03:51 By : Nicorobin
 


 

No. 5



โพสกระทู้ ( 171 )
บทความ ( 0 )



สถานะออฟไลน์


งง เลย

$numrows ==0

แล้วที่ไม่ลงฐานข้อมูลนี่ยังขึ้นตัวสีแดง เหมือนเดิมป่าวคับ

ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมไปแล้ว
Date : 2010-07-15 17:20:22 By : birdbird27
 


 

No. 6



โพสกระทู้ ( 648 )
บทความ ( 0 )



สถานะออฟไลน์


ถ้าได้ค่า 0 แล้วแต่มันยังไม่เพิ่มใน ฐานข้อมูล ก็แสดงว่า

Code (PHP)
for($j=0;$j<count($_POST["hardware"]);$j++)
	{
	if(trim($_POST["hardware"][$j]) != "") 
		{
		 $sql ="INSERT INTO 		repair(idrepair,idcom,computername,repair,cause,hardware,hardware_oth,namesent,dep_id,datesent,location,tel,status_id)";
		 $sql .="  VALUES ('$ticket_number',NULL,'$computername','$repair','$cause','".$_POST["hardware"][$j]."','$hardware_oth','$namesent','$dept_id','$datesent','$location','$tel','1')"; 
// echo "$sql";
		 $objQuery = mysql_query($sql) or die(mysql_error());
		 $str="INSERT INTO  history (com_name,idrepair)";
		 $str.= " VALUES ('$computername','$ticket_number')";
		 $query=  mysql_query($str) or die(mysql_error());		 	
		echo "ระบบได้ทำการแจ้งซ่อมแล้วค่ะ";   
		echo "<a href='viewjob.php'>ดูที่แจ้ง</a></b></center>"; 
		}				
	 }


ตรงนี้มีปัญหาต่อละ
Date : 2010-07-15 17:50:35 By : 50121680
 


 

No. 7



โพสกระทู้ ( 152 )
บทความ ( 0 )



สถานะออฟไลน์


ค่ะ ลองเปลี่ยนคำสั้ง sql เป็น
Select * from repair where computername='$computername' and status_id=1 or status_id=2
แล้วก็ลองเช็ค $check;
ได้ค่ามา Select * from repair where computername='rd-4' and status_id=1 or status_id=2
ส่วน $numrows ได้ค่ามาเป็น 1 ค่ะ

ไปดูในฐานข้อมูลไม่มีชื่อเครื่องนี้ค่ะ แล้วมันก็ขึ้นว่า ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมแล้ว
Date : 2010-07-16 08:33:14 By : Nicorobin
 


 

No. 8



โพสกระทู้ ( 152 )
บทความ ( 0 )



สถานะออฟไลน์


หากเอา
Code (PHP)
else
{
  echo "<center><font color='red'>ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมแล้ว</font>";
echo "<center><font color='red'><a href='viewjob.php'>ไปดูที่แจ้งซ่อม</a></font>";
 }


สามารถเพิ่มลงฐานข้อมูลได้ปรกติ
แต่หากแจ้งซ่อมเครื่องที่แจ้งเข้ามาแล้ว สถานะของเครื่องนั้น ๆ ยังไม่ end ก็สามารถแจ้งได้ค่ะ
ต้องทำอย่างไรดีค่ะ
Date : 2010-07-16 08:42:53 By : Nicorobin
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยดูโค๊ดหน่อยค่ะว่าผิดอะไรค่ะ โค๊ดนี้มันไม่ยอมเพิ่มข้อมูลให้ค่ะ มันแจ้งว่า ชื่อเครื่องนี้ได้ทำการแจ้งซ่อมไปแล้ว...
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่