Jump to content

Can't get UPDATE statement to work


MjM8082

Recommended Posts

Sorry I'm still new to php. So I'm trying to get my update statement to work. I will post the statement I have for it, I will also post sql code from the database it is trying to update and I will also post my form page. Appreciate any help, thanks.

 

 

Here is my update statement...

 

 

<?php

	if (isset($_POST['update']))
{          
	foreach($_POST['update'] as $update_id)
	{             
		$query = "UPDATE FROM users WHERE course_id = $update_id";             
		mysqli_query($dbc, $query) or die ('can\'t update course');          

		$course_id 	= $_POST['course_id'];
		$course_name = $_POST['course_name'];
		$student_id = $_POST['student_id'];
		$sql = "INSERT INTO users (course_id, course_name, student_id) VALUES ('$course_id', '$course_name', '$student_id');"; 
		$db->exec($sql);

	}				
	echo 'course has been updated.<br />';   
}

?>

 

 

 

Here is the page that the update statement is on...

 

 

<html>
<head>
<title>Update User</title>
</head>
<body>
<form method="post" action="update_user2.php">
<?php
$dbc = mysqli_connect('localhost', 'se266_user', 'pwd', 'se266') 
	or die(mysql_error());
//delete users
echo '<b>Delete or Update User</b>.<br />';
if (isset($_POST['remove']))
{          
	foreach($_POST['delete'] as $delete_id)
	{             
		$query = "DELETE FROM users WHERE course_id = $delete_id";             
		mysqli_query($dbc, $query) or die ('can\'t delete course');          
	}        
	echo 'user has been deleted.<br />';   
}

		if (isset($_POST['update']))
{          
	foreach($_POST['update'] as $update_id)
	{             
		$query = "UPDATE FROM users WHERE course_id = $update_id";             
		mysqli_query($dbc, $query) or die ('can\'t update course');          

		$course_id 	= $_POST['course_id'];
		$course_name = $_POST['course_name'];
		$student_id = $_POST['student_id'];
		$sql = "INSERT INTO users (course_id, course_name, student_id) VALUES ('$course_id', '$course_name', '$student_id');"; 
		$db->exec($sql);

	}				
	echo 'course has been updated.<br />';   
}

//display users info with checkbox to delete  
$query = "SELECT * FROM users";  
$result = mysqli_query($dbc, $query);  
while($row = mysqli_fetch_array($result))
{      
	echo '<input type="checkbox" value="' .$row['course_id'] . '" name="delete[]" />'; 
	echo ' ' .$row['course_name'] .' '. $row['student_id'];
	echo '<br />';  
}
mysqli_close($dbc);

?>	
<input type="submit" name="remove" value="Remove" />
<input type="submit" name="update" value="Update" />
<br>
<br>
<form method="GET" action="update_user2.php">		
<label for="course_id">Course ID:</label> 
<input type="text" id="course_id" name="course_id" /><br />		
<label for="course_name">Course Name:</label>
<input type="text" id="course_name" name="course_name" /><br />

<label for="course_name">Student ID:</label>

<input type="text" id="student_id" name="student_id" /><br />		



</form>
</body>
</html>

 

 

 

Here is my sql database...

 

DROP DATABASE IF EXISTS se266;
CREATE DATABASE se266;


use se266;
CREATE TABLE users (
  course_id        INT(11)        NOT NULL   AUTO_INCREMENT,
  course_name       VARCHAR(50),
  student_id     VARCHAR(50)    NOT NULL,

  PRIMARY KEY (course_id)
);
-- create the users and grant priveleges to those users
GRANT SELECT, INSERT, DELETE, UPDATE
ON se266.*
TO se266_user@localhost
IDENTIFIED BY 'pwd';

INSERT INTO users (course_id, course_name, student_id)
VALUES ('se255', 'Web Design Using PHP', '43253256');
use se266;
SELECT * FROM users;

Link to comment
Share on other sites

Still not working,  this is what my update statement looks like now...

 

 

<?php

	if (isset($_POST['update']))
{          
	foreach($_POST['update'] as $update_id)
	{             
		$course_name = mysql_real_escape_string($_POST['course_name']);

		mysql_query("update users set course_name = '$course_name' where course_id = course_id;");             
		mysqli_query($dbc, $query) or die ('can\'t update course');          

		$course_id 	= $_POST['course_id'];
		$course_name = $_POST['course_name'];
		$student_id = $_POST['student_id'];
		$sql = "INSERT INTO users (course_id, course_name, student_id) VALUES ('$course_id', '$course_name', '$student_id');"; 
		$db->exec($sql);

	}				
	echo 'course has been updated.<br />';   
}

?>

Link to comment
Share on other sites

Still not updating.. here is my updated code...

 

 

 

			if (isset($_POST['update']))
{          
	foreach($_POST['update'] as $update_id)
	{             
		$course_id 	= $_POST['course_id'];
		$course_name = $_POST['course_name'];
		$student_id = $_POST['student_id'];

		mysql_query("update users set course_name = '$course_name' where course_id = $course_id;");             
		mysqli_query($dbc, $query) or die ('can\'t update course');     

		$sql = "INSERT INTO users (course_id, course_name, student_id) VALUES ('$course_id', '$course_name', '$student_id');"; 
		$db->exec($sql);

	}				
	echo 'course has been updated.<br />';   
}

Link to comment
Share on other sites

I feel like I'm getting closer... Here is my updated code...

 

 

<html>
<head>
<title>Update User</title>
</head>
<body>
<form method="post" action="update_user2.php">
<?php
$dbc = mysqli_connect('localhost', 'se266_user', 'pwd', 'se266') 
	or die(mysql_error());
//delete users
echo '<b>Delete or Update User</b>.<br />';
if (isset($_POST['remove']))
{          
	foreach($_POST['delete'] as $delete_id)
	{             
		$query = "DELETE FROM users WHERE course_id = $delete_id";             
		mysqli_query($dbc, $query) or die ('can\'t delete course');          
	}        
	echo 'user has been deleted.<br />';   
}

		if (isset($_POST['update']))
{          
	foreach($_POST['update'] as $update_id)
	{             
		$course_id 	= $_POST['course_id'];
		$course_name = $_POST['course_name'];
		$student_id = $_POST['student_id'];

		$query = "UPDATE users SET course_name = $course_name WHERE course_id = $course_id";             
		mysqli_query($dbc, $query) or die ('can\'t update course');     

		$update_count = $db->exec($query);

	}				
	echo 'course has been updated.<br />';   
}


//display users info with checkbox to delete  
$query = "SELECT * FROM users";  
$result = mysqli_query($dbc, $query);  
while($row = mysqli_fetch_array($result))
{      
	echo '<input type="checkbox" value="' .$row['course_id'] . '" name="delete[]" />'; 
	echo ' ' .$row['course_name'] .' '. $row['student_id'];
	echo '<br />';  
}
mysqli_close($dbc);

?>	
<input type="submit" name="remove" value="Remove" />
<input type="submit" name="update" value="Update" />
<br>
<br>
<form method="POST" action="update_user2.php">		
<label for="course_id">Course ID:</label> 
<input type="text" id="course_id" name="course_id" /><br />		
<label for="course_name">Course Name:</label>
<input type="text" id="course_name" name="course_name" /><br />

<label for="course_name">Student ID:</label>

<input type="text" id="student_id" name="student_id" /><br />		



</form>
</body>
</html>

Link to comment
Share on other sites

  • 3 weeks later...
This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.