• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 195
  • Last Modified:

Update record in php/mySQL

I'm trying to do a simple edit of rows in a database and am hitting a wall.

I am adding rows with no problem.

Please take a look and see if you can see any problems.  For debug purposes, I have echo'd out the Strain_ID (primary field) ...it echos correctly in the first page but it is empty in the second page.
*********here's the edit page -- Strain_ID is the primary field***********
 
<?php
require "authentication.inc"; 
session_start();
 
// Connect to an authenticated session or relocate to logout.php
sessionAuthenticate();
 
 
$username = $_SESSION["loginUsername"]
?>
 
 
<?php require_once("includes/connection.php"); ?>
<?
	$mouse_id =  $_GET['mouse_id'];
	$record = mysql_query("SELECT * FROM mousetest WHERE ( Strain_ID='$mouse_id' )")
		or die("Could not query database");
		
	$mouse_row = mysql_fetch_array( $record );
 
	
?>
<form action="edit_mouseline2.php" method="POST">
<table width="100%" border="0">
  <tr>
    <td valign="top"><p>Principal Investigator: <input type="text" name ="Principal_Investigator" 
    value="<?php echo $mouse_row['Principal_Investigator']; ?>"  /></p>
    <p>Co Investigator: <input type="text" name ="Co_Investigator" 
    value="<?php echo $mouse_row['Co_Investigator']; ?>"  /></p>
 </tr>
</table>
Strain ID Is <?php echo $mouse_row['Strain_ID']; ?>
 
 
**************here's  the code for:  edit_mouseline2.php ******************
<?php require_once("includes/connection.php"); ?>
<?php  require_once 'includes/functions.php'; ?>
<?php
require "authentication.inc"; 
session_start();
 
// Connect to an authenticated session or relocate to logout.php
sessionAuthenticate();
 
 
$username = $_SESSION["loginUsername"]
?>
 
 
 <?php
			
  
		$Common_Strain =  mysql_prep($_POST['Common_Strain']);
		$Co_Investigator = mysql_prep($_POST['Co_Investigator']);
 
$query = "UPDATE mousetest SET Principal_Investigator='$Principal_Investigator' WHERE Strain_ID='$Strain_ID'";
								
$result = mysql_query($query)
or die ("Couldn't execute query");
	?>

Open in new window

0
liz2008
Asked:
liz2008
1 Solution
 
AlexanderRCommented:
because you are not passing strain_id between your form and edit_mouseline2.php

create a hidden input your form that stores strain_id:

<input type="hidden" name="strain_id" value="<?php echo $mouse_row['Strain_ID']; ?>" />

grab it in edit_mouseline2.php:
$Strain_ID = mysql_prep($_POST['strain_id']);
0
 
liz2008Author Commented:
Thank you, that was the missing piece.
0

Featured Post

Free recovery tool for Microsoft Active Directory

Veeam Explorer for Microsoft Active Directory provides fast and reliable object-level recovery for Active Directory from a single-pass, agentless backup or storage snapshot — without the need to restore an entire virtual machine or use third-party tools.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now