2016-06-14 5 views
1

Alle Arbeiten,Formular Update - Nicht

Ich bin von der veralteten mysql_query-mysqli Migration und während des Prozesses einige Probleme mit der Form Aktualisierung Änderungen, die ich habe. Insbesondere scheint es, als ob die $ud_id Variable, um die id zu bekommen, nicht funktioniert.

Die Abfragen werden in die linken äußeren Joinverknüpfungstabellen empinfo und headcount geschrieben, in denen beide der verknüpfenden primären ID. Hier

ist die edit.php Seite, die funktioniert und Lasten wie beabsichtigt:

<!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"> 


<div class="header"> 
<?php include 'header.php';?> 
</div> 

<center> 

<?php 
    // db connection 
    include_once('../connection.php'); 

     // id pull from url 
     $ID = (int)$_GET['id']; 
      // get results from database 
      $query = "SELECT headcount.*, empinfo.* 
      FROM headcount 
      LEFT OUTER JOIN empinfo 
      ON headcount.id = empinfo.id 
      WHERE headcount.id = '$ID'"; 

      $response = mysqli_query($dbc, $query); 

      while($row = mysqli_fetch_array($response)) 

      { 

       echo "<form action='update.php' method='post'>"; 
       echo '<div style="width:40%;padding:0 10pt 0 0;float:middle;">'; 
       if ($row['isActive'] === '1') 
       echo '<input type="checkbox" name="ud_isActive" value="1" checked>Active<br />'; 
       else 
       echo '<input type="checkbox" name="ud_isActive" value="0">Active<br />'; 
       echo '<input type="hidden" name="ud_ID" value="<?=$ID;?>">'; 
       echo "ID #: <input type='text' name='ud_hwid' value=". $row['id'] ." disabled readonly><br />"; 
       echo 'Name: <input type="text" name="ud_EmployeeName" value="'. $row["EmployeeName"] .'"><br />'; 
       echo '<br />'; 
       echo '<a href="mailto:' . $row["Email"] .'">Email</a>: <input type="text" name="ud_Email" value="'. $row["Email"] .'"><br>'; 
       echo '<br />'; 
       echo 'DOB: <input type="text" name="ud_DOB" value='. $row["DOB"] .'><br />'; 
       echo 'Age: <input type="text" name="ud_Age" value='. $row["Age"] .'><br />'; 
       if ($row['isUnderage'] === '1') 
       echo '<input type="checkbox" name="isUnderage" value="1" checked>Underage<br />'; 
       else 
       echo '<input type="checkbox" name="isUnderage" value="0">Underage<br />'; 
       echo '</div>'; 
       echo '<div style="width:40%;padding:0 10pt 0 0;float:middle;">'; 
       echo '<br />'; 
       echo 'Address: <input type="text" name="ud_StreetAddress" value="'. $row["StreetAddress"] .'"><br />'; 
       echo 'City: <input type="text" name="ud_City" value="'. $row["City"] .'"><br />'; 
       echo 'Zip Code: <input type="text" name="ud_ZipCode" value="'. $row["ZipCode"] .'"><br />'; 
       echo '<br />'; 
       echo 'Home Phone: <input type="text" name="ud_HomePhone" value="'. $row["HomePhone"] .'"><br />'; 
       echo 'Wireless: <input type="text" name="ud_Wireless" value="'. $row["Wireless"] .'"><br />'; 
       echo '<br />'; 
       echo 'Home Department: <input type="text" name="ud_HomeDept" value="'. $row["HomeDept"] .'"><br />'; 
       echo 'Department Manager: <input type="text" name="ud_Manager" value="'. $row["Manager"] .'"><br />'; 
       echo '</div>'; 
       echo '<br />'; 
       echo 'Live Orientation:<input type="date" name="LODate" value=""><br />'; 
       echo '<br />'; 
       echo 'Online Training: <input type="date" name="OTTraining" value=""><br />'; 



      } 

    ?> 
    <br /> 

    <input type="Submit"> 
    </form> <br /> 
     <a href="javascript:history.back()">Go Back</a> 
    <br /> 
    </body> 
    </html> 

Hier ist die update.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"> 


<style type="text/css"> 
#wrap { 
    width:600px; 
    margin:0 auto; 
} 
#left_col { 
    float:left; 
    width:300px; 
} 
#right_col { 
    float:right; 
    width:300px; 
} 
</style> 

<div class="header"> 
<?php include 'header.php';?> 
</div> 

<center> 

<?php 
$ud_ID = $_REQUEST["ID"]; 
$ud_EmployeeName = $_POST["ud_EmployeeName"]; 
$ud_Email = $_POST["ud_Email"]; 
$ud_DOB = $_POST["ud_DOB"]; 
$ud_Age = $_POST["ud_Age"]; 
$ud_StreetAddress = $_POST["ud_StreetAddress"]; 
$ud_City = $_POST["ud_City"]; 
$ud_ZipCode = $_POST["ud_ZipCode"]; 
$ud_HomePhone = $_POST["ud_HomePhone"]; 
$ud_Wireless = $_POST["ud_Wireless"]; 
$ud_HomeDept = $_POST["ud_HomeDept"]; 
$ud_Manager = $_POST["ud_Manager"]; 

// db connection 
include_once('../connection.php'); 

$query = "UPDATE headcount SET 
EmployeeName = '$ud_EmployeeName', Email = '$ud_Email', 
DOB = '$ud_DOB', Age = '$ud_Age', StreetAddress = '$ud_StreetAddress', 
City = '$ud_City', ZipCode = '$ud_ZipCode', HomePhone = '$ud_HomePhone', 
Wireless = '$ud_Wireless', HomeDept = '$ud_HomeDept', Manager = '$ud_Manager' 
WHERE ID = '$ud_ID'"; 

    $response = mysqli_query($dbc, $query); 

    echo $ud_ID; 
    echo $ud_EmployeeName; 

if ($response) 
    echo '<p>Record Updated<p> <br /> <a href="javascript:history.back()">Go Back</a>'; 
else 
    echo "Problem updating record. MySQL Error: " . mysql_error(); 
?> 
</body> 
</html> 

Auf der Linie 52 von Update .php Sie werden feststellen, ich verwende Echo $ud_ID und $ud_EmployeeName - Dies ist, um mir zu zeigen, was die Variable anzeigt. Die $ud_EmployeeName erscheint und die $ud_ID nicht.

Ich habe auch

$ud_ID = $_POST["ID"]; 

und ich keine Ergebnisse versucht mit.

Zusätzlich auf edit.php Ich habe versucht:

echo '<input type="hidden" name="ud_ID" value='. $row["id"] .'><br />'; 

und erhalte ich die Fehlermeldung:

Notice: Undefined index: ID in update.php on line 27 

Wenn ich die submit Schaltfläche klicken, erhalte ich die Meldung, dass der Datensatz wurde aktualisiert, aber beim Aktualisieren enthält der Datensatz dieselben Daten.

Antwort

1

Hallo Verwendung Name Eigenschaft bekommen Wert

$ud_ID = $_POST['ud_ID']; 
+0

Danke, Mamta. Arbeitete perfekt. – hinteractive02

Verwandte Themen