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,030

HOME > PHP > PHP Forum > ้เขียนคำสั่ง Delete ข้อมูลในฐาน แล้ว ไม่ยอมหายไปครับ ไม่รู้ errorr ตรงไหน รบกวนช่วยดูทีครับ



 

้เขียนคำสั่ง Delete ข้อมูลในฐาน แล้ว ไม่ยอมหายไปครับ ไม่รู้ errorr ตรงไหน รบกวนช่วยดูทีครับ

 



Topic : 112989



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



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



Code (PHP)
<?php
	session_start();
?>
	<html>
	<head>
		
		
		<script>
		function confirmDelete(delUrl) {
			if (confirm("คุณต้องการลบไฟล์ใช่หรือไม่")) {
		document.location = delUrl;
	}
}
</script>
		</head>
	
<center>
			<form name="frmSearch" method="get" action="list_files.php">
			<table width="599" border="0">
			<tr>
			<th>Keyword
				  <input name="txtKeyword" type="text" id="txtKeyword">
				  <input type="submit" value="Search"></th>
    </tr>
  </table>
</form>
<br>
<br>
</center>

<?php
// Connect to the database
$dbLink = new mysqli('localhost', 'it55660293', 'xgabpyz1626', 'it55660293');
if(mysqli_connect_errno()) {
    die("MySQL connection failed: ". mysqli_connect_error());
}
 
// Query for a list of all existing files
$sql = "SELECT `id`, `name`, `mime`, `size`, `created`,`count` FROM `file` WHERE UserID = '$_SESSION[UserID]'";
$result = $dbLink->query($sql);
 
// Check if it was successfull
if($result) {
	if($_GET["txtKeyword"] != "")
	{
	$objConnect = mysql_connect("localhost","it55660293","xgabpyz1626") or die("Error Connect to Database");
	$objDB = mysql_select_db("it55660293");
	// Search By Name or Email
	$strSQL = "SELECT * FROM file WHERE (name LIKE '%".$_GET["txtKeyword"]."%' and UserID = '$_SESSION[UserID]')";
	$objQuery = mysql_query($strSQL) or die ("Error Query [".$strSQL."]");
	
				
	echo '<table width="80%" align="center">
                <tr>
                    <td><b>Name</b></td>
                    <td><b>Mime</b></td>
                    <td><b>Size (bytes)</b></td>
                    <td><b>Created</b></td>
                    <td><b>&nbsp;</b></td>
					<td><b>Sum Download</b></td>
					<td><b>Delete File</b></td>
                </tr>';
 
        // Print each file
        while($row = mysql_fetch_array($objQuery)) {
            echo "
                <tr>
					<td align='center'>{$row['id']}</td>
                    <td>{$row['name']}</td>
                    <td>{$row['mime']}</td>
                    <td>{$row['size']}</td>
                    <td>{$row['created']}</td>
                    <td><a href='get_file.php?id={$row['id']}'>Download</a></td>
					<td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$row['count']}</td>
					<td align='center'><a href = javascript:confirmDelete('list_files.php?action=delete&value={$row['id']}')><font color = 'red'>Delete</font></a></td>
                </tr>";
        }
 
        // Close table
        echo '</table>';
		
		
	}
	else
	{
	// Make sure there are some files in there
    if($result->num_rows == 0) {
        echo '<p>There are no files in the database</p>';
    }
    else {
        // Print the top of a table
		
        echo '<table width="80%" align="center">
                <tr>
                    <td ><b>Name</b></td>
                    <td><b>Mime</b></td>
                    <td><b>Size (bytes)</b></td>
                    <td><b>Created</b></td>
                    <td><b>&nbsp;</b></td>
					<td><b>Sum Download</b></td>
					<td><b>Delete File</b></td>
                </tr>';
 
        // Print each file
        while($row = $result->fetch_assoc()) {
            echo "
                <tr>
					<td align='center'>{$row['id']}</td>
                    <td>{$row['name']}</td>
                    <td>{$row['mime']}</td>
                    <td>{$row['size']}</td>
                    <td>{$row['created']}</td>
                    <td><a href='get_file.php?id={$row['id']}'>Download</a></td>
					<td>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$row['count']}</td>
					<td align='center'><a href = javascript:confirmDelete('list_files.php?action=delete&value={$row['id']}')><font color = 'red'>Delete</font></a></td>
					
                </tr>";
        }
 
        // Close table
        echo '</table>';
		
		
    }
}
// delete
		function delete($id){
		$sql15 = "DELETE FROM file WHERE id = '$id'";
				mysql_query($dbLink,$sql15) or die("ERRPR MSG DELETE FILES : ".mysql_error());
				echo "DELETE COMPLETE";
				echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
				}
				if($_GET['action'] == 'delete'){
				delete($_GET['value']);
				}
    // Free the result
    $result->free();
}
else
{
    echo 'Error! SQL query failed:';
    echo "<pre>{$dbLink->error}</pre>";
}

// Close the mysql connection
$dbLink->close();
?>


	<body>
		<table border="0" cellpadding="10" cellspacing="1" width="500" align="center">
		<tr class="tableheader">
		<td align="center"></td>
	</tr>
		<tr class="tablerow">
	<td>
	<center>
	<a href="add_file.php">Back to Upload File</a>
	<br>
	<?php
		if($_SESSION["Username"]) {
	?>
		Welcome <?php echo $_SESSION["Username"]; ?>. Click here to <a href="index.html" tite="Logout">Logout.
		<br> Your user ID is <?php echo $_SESSION["UserID"]; ?>
	</center>
	<?php
	}
	?>
</td>
</tr>
</body>
</html>




เนี่ยครับ ข้อมูลไม่ยอมลบหายไป
กดปุ่ม delete แล้วมันขึ้น ERRPR MSG DELETE FILES :



Tag : PHP, MySQL, HTML/CSS









ประวัติการแก้ไข
2014-12-01 20:46:50
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2014-12-01 19:35:52 By : xgabpyz View : 2813 Reply : 10
 

 

No. 1



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



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

พอถึง ฟังชั่น delete เหมือนมันเข้า or die("ERRPR MSG DELETE FILES : ".mysql_error()); อะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 20:22:10 By : xgabpyz
 


 

No. 2



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



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


เอานี้ไปวางแทนที่ในบรรทัดที่ 129 นะจ๊ะ

Code
mysql_select_db("it55660293", $dbLink);
mysql_query($sql15, $dbLink) or die("ERRPR MSG DELETE FILES : ".mysql_error());

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 21:46:10 By : k.voyza
 

 

No. 3



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



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

ยังไม่ได้เหมือนเดิมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 21:54:31 By : xgabpyz
 


 

No. 4



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



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


มันขึ้นว่าไงเอ่ย

แล้วก็รบกวนตรวจสอบชื่อฟังก์ชั่นในบรรทัดที่ 127 ด้วยนะครับ
เปลี่ยนได้มั้ยเอ่ย อิอิ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 22:14:50 By : k.voyza
 


 

No. 5



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



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

adsad


พอกดปุ่ม delete แล้วขึ้นแบบนี้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 22:18:34 By : xgabpyz
 


 

No. 6



โพสกระทู้ ( 1,819 )
บทความ ( 20 )

สมาชิกที่ใส่เสื้อไทยครีเอท

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

เอาโค้ดมาจากไหนครับเนี่ย - -
คือต้องเข้าใจพื้นฐานก่อนนะครับ ตัวแปรในภาษาโปรแกรมเกือบทุกภาษามันมี scope ของมัน
หมายถึงที่ที่ตัวแปรนั้นมีตัวตนอยู่
ซึ่งใน php ตัวแปรมีแค่ global scope และ function scope (ตัวแปรใน class ก็ถือว่าเป็น function scope เพราะต้องเรียกใช้งานผ่าน $this)

Code (PHP)
<?php
// global scope
$a = 555;
function abc()
{
    // function scope
    echo $a; // error เพราะ $a อยู่ใน global scope
}
abc();


ถ้าจะให้ในฟังก์ชั่นมองเห็นตัวแปรที่อยู่ใน global scope ต้องประกาศก่อนด้วยคีย์เวิร์ด global

Code (PHP)
<?php
// global scope
$a = 555;
function abc()
{
    // function scope
    global $a; // ดึง $a มาจาก global scope
    echo $a; // ok
}
abc();


ซึ่งในโค้ดของคุณมีการประกาศฟังก์ชั่น delete() ที่ใช้ตัวแปรจาก global scope โดยไม่ประกาศด้วยคีย์เวิร์ด global (บรรทัด 127)
ลองคิดตามที่ผมอธิบายแล้วลองแก้เองครับ

จะแก้ไขให้ทำงานถูกต้องได้อย่างไร?
function delete($id){
    $sql15 = "DELETE FROM file WHERE id = '$id'";
    mysql_query($dbLink,$sql15) or die("ERRPR MSG DELETE FILES : ".mysql_error());
    echo "DELETE COMPLETE";
    echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
}


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 22:23:50 By : phpinfo()
 


 

No. 7



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



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

Code (PHP)
function delete($id){
		
		$sql15 = "DELETE FROM file WHERE id = '$id'";
				global $dbLink;
				mysql_select_db("it55660293", $dbLink);
				mysql_query($sql15, $dbLink) or die("ERRPR MSG DELETE FILES : ".mysql_error());
				echo "DELETE COMPLETE";
				echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
				}
				if($_GET['action'] == 'delete'){
				delete($_GET['value']);
				}


Code (PHP)
function delete($id){
		global $sql;
		$sql = "DELETE FROM file WHERE id = '$id'";
				mysql_select_db("it55660293", $dbLink);
				mysql_query($sql, $dbLink) or die("ERRPR MSG DELETE FILES : ".mysql_error());
				echo "DELETE COMPLETE";
				echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
				}
				if($_GET['action'] == 'delete'){
				delete($_GET['value']);
				}

Code (PHP)
function delete($id){
		global $sql,$dbLink;
		$sql = "DELETE FROM file WHERE id = '$id'";
				mysql_select_db("it55660293", $dbLink);
				mysql_query($sql, $dbLink) or die("ERRPR MSG DELETE FILES : ".mysql_error());
				echo "DELETE COMPLETE";
				echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
				}
				if($_GET['action'] == 'delete'){
				delete($_GET['value']);
				}


ลองทั้ง 3 แบบแล้วครับ ก็ยังไม่ได้งะ ขึ้นแบบเดิมตลอด

ERRPR MSG DELETE FILES :


ประวัติการแก้ไข
2014-12-01 22:36:35
2014-12-01 22:37:04
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-01 22:27:03 By : xgabpyz
 


 

No. 8



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



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


ลองดูนะ

Code
// delete
function delete($id){
$dbLink = mysql_pconnect('localhost', 'it55660293', 'xgabpyz1626') or trigger_error(mysql_error(),E_USER_ERROR);
$sql15 = "DELETE FROM file WHERE id = '$id'";
mysql_select_db("it55660293", $dbLink);
mysql_query($sql15, $dbLink) or die("ERRPR MSG DELETE FILES : ".mysql_error());
echo "DELETE COMPLETE";
echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
}
if($_GET['action'] == 'delete'){
delete($_GET['value']);
}
// Free the result
$result->free();
}
else
{
echo 'Error! SQL query failed:';
echo "<pre>{$dbLink->error}</pre>";
}
// Close the mysql connection
$dbLink->close();

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-02 00:03:32 By : k.voyza
 


 

No. 9



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



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

ลบไฟล์ได้แล้วครับ ขอบคุณมากนะครับ !!

เอ่อ ถ้าผมอยากจะให้อธิบายด้วยได้ไหมครับว่าทำไม

แต่ในความเข้าใจผม ผมคิดว่า มันมี if else เข้ามาเกี่ยวข้อง

มันเลยทำให้ไม่รู้จัก DB มันเลยไม่รู้จะเลือกลบจาก ตารางไหน


ประวัติการแก้ไข
2014-12-02 00:34:47
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-02 00:24:33 By : xgabpyz
 


 

No. 10



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



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


ตัวแปรใน function ที่ต้องทำ Global คือการประกาศตัวแปรแบบหนึ่ง
เป็นการประกาศให้ใช้ ตัวแปรนอก function นี้ได้ภายใน function นั้นๆ
Code (PHP)
function delete($id){
// ตัวแปรที่ต้องปรเะกาศ เพราะไม่ได้ถูกประกาศไว้ ภายในฟังก์ชั่น
	global $dbLink;
	$sql15 = "DELETE FROM file WHERE id = '$id'";
	mysql_query($dbLink,$sql15) or die("ERRPR MSG DELETE FILES : ".mysql_error());
	echo "DELETE COMPLETE";
	echo "<META HTTP-EQUIV='Refresh' CONTENT='0;URL=./list_files.php'>";
}

ส่วน $sql15 ถูกประกาศภายใน function อยู่แล้ว
ถ้าประกาศหมายความว่าสามารถเรียกใช้จาก นอก ฟังก์ชั่นได้ด้วย

ปล และคำสั่ง ต้องเป็นแบบนี้ด้วยนะครับ
mysql_query($sql15, $dbLink) สลับตัวแปรกันด้วยนะครับ ต้องเอา link ไว้ด้านหลัง

แต่ถ้า ทั้งโปรแกรม ติดต่อแค่ database เดียว ก็ไม่จำเป็นต้องใส่ link นะครับ
เมื่อเราประกาศ mysql_select_db( $dbName ); ก็ไม่จำเป็นต้องใช้ link แล้วครับ

และก็เริ่มหัดเขียน mysqli ได้แล้วครับ เพราะเวอร์ชั่นใหม่ๆเขาเปลี่ยนไปใช้ mysqli กันหมดแล้วครับ


ประวัติการแก้ไข
2014-12-02 08:29:34
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-12-02 08:21:00 By : Chaidhanan
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ้เขียนคำสั่ง Delete ข้อมูลในฐาน แล้ว ไม่ยอมหายไปครับ ไม่รู้ errorr ตรงไหน รบกวนช่วยดูทีครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 04
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 อัตราราคา คลิกที่นี่