更新一列中数据的一个名称,同一列中具有相同名称的所有数据也将更新


Update one name of data from one column, all data that have same name and in the same column will also updated

我需要一些帮助,我有一个名为POSITION的表。该表的列为pno、pname和ptraining_type。p_name代表职位名称。。一个p_name将参加多种类型的培训,例如,它可以是这样的

p_no|p_name|p_training_type

1|总经理|海洋生存2|总经理|安全驾驶3 |技术助理|海上救生4|HSSE经理|海上救生

我想做的是通过更新一个p_name示例GENERAL MANAGER,所有具有相同p_name的p_name也将更改。。例如,用户将在update1.php页面中搜索他们想要更新的pname,但用户不记得位置名称的全名。。因此用户将键入MANAGER。。所以结果是。

  1. 总经理
  2. HSSE管理器

接下来,用户将单击他们想要更新的职位名称。。例如用户单击GENERAL MANAGER。

因此,职位名称将被转移到另一个页面(update2.php),其中GENERAL MANAGER将以可编辑的形式出现。通过键入GENERAL MANAGER作为ADMIN MANAGER编辑名称后,单击更新按钮。。它将转到update3.php,在此页面中包含更新查询。

对于结果,没有错误显示。。但是数据仍然没有更新,这仍然是GENERAL MANAGER而不是ADMIN MANAGER。我不知道问题会在哪里。下面是更新过程的相关页面。。

update1.php

        <form action="update1.php" method="post" name="form1" id="form1">
        <table><tr>
           <th scope="col"><span class="style1"></span>Type:</span></th>
           <th colspan="2"><select name="method">
              <option value="" selected>-Please choose-</option>
              <option value="position">By Position</option>
              <option value="training">By Training Type</option>
        </select></th>
        </tr>
        <tr>
           <th scope="col">Input Query :</th>
           <th><input type="text" id="search" name="search" size="50" /></th>
           <th><input type="submit" name="button" id="button" value="Search" /></th>
        </tr></table>
        </form>
         <?php  $resultName=$_POST['search']; ?>   
<?php
$search =$_POST['search'];
$method =$_POST['method'];
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("training", $con);
if($method=="") 
    { 
     }
else if($method=="position"){    
$result = mysql_query("SELECT distinct p_name FROM test WHERE p_name LIKE '%$search%'");
$num_rows = mysql_num_rows($result);
}
else if($method=="training"){    
$result = mysql_query("SELECT distinct p_training_type FROM test WHERE p_training_type LIKE '%$search%'");
$num_rows = mysql_num_rows($result);
} 

echo "<font  size=2>"." Total number of result found for "."<font color='#FF0000' size=2>".$resultName."<font color='#43423F' size=2>"." :"."<font color='#FF0000' size=2>"." $num_rows"."<font color='#43423F' size=2>";
?>
<div
style="border: 0px; width: 620px; height: 400px; overflow: auto;">     
<?php
echo "<table width='600' height='0' border='0' bordercolor='#000000' bgcolor='#FFFFFF'>
<tr>
   <th bgcolor='#000000'><font color='#FFFFFF'>Result </th>
   <th bgcolor='#000000'><font color='#FFFFFF'>Action</th>
</tr>";
if($method!="") 
    {   
while($row = mysql_fetch_array($result))
  {
  if($method=="position"){
   echo "<tr>
            <td height=0 bgcolor='#FFFFFF'>"."<font size=2>".$row['p_name']."</td>
        <td height=0 bgcolor='#FFFFFF'>"."<font size=2><a href='update2.php?p_name=$row[p_name]'><img src='edit.gif' title='Edit' /></a>
         <a href='delete2.php?valid=".$row['p_name']."'><img src='delete.gif' title='Delete' /></a></td>";}
 else if($method=="training"){
  echo "<tr><td height=0 bgcolor='#FFFFFF'>"."<font size=2>"."<input name='p_training_type' width='25' type='text' value='".$row['p_training_type']."'/>"."</td>";}
  }
  }
echo "</table>";
mysql_close($con);
?>

update2.php

<table width="600" border="0">
  <tr>
    <th scope="col">Designation</th>
    <th width="17" scope="col">Action</th>
  </tr>
  <form name="form2"  method="POST" action="update3.php"  enctype="multipart/form-data">
  <tr>
    <td><input name="p_name" type="text" id="p_name" value="<?php echo $row_RecordsetZ['p_name']; ?>" size="20" /></td>
    <td><input type="submit" value="Update" id="update" name="update"/></td>
  </tr>
  </form>

update3.php

<?php
$p_name=$_POST['p_name'];
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db("training", $con);
{
$sql=mysql_query("UPDATE POSITION SET p_name='$p_name' WHERE p_name='".$p_name."'") or die("Error: " . mysql_error());
    print '<script type="text/javascript">'; 
    print 'alert("The details are successfully insert")'; 
    print '</script>';
    mysql_close($con);
}
    echo "<script language='"JavaScript'">{                                                                                         
    location.href='"upate1.php'";                                                                                               
    }</script>";
    header('Content-Type: application/pdf');
?>

您需要像一样通过表单提交上的隐藏字段来主控PID

<form name="form2"  method="POST" action="update3.php"  enctype="multipart/form-data">
  <tr>
     <td><input name="p_id" type="hidden" id="p_id" value="<?php echo $row_RecordsetZ['p_id']; ?>" size="20" /></td>
     <td><input name="p_name" type="text" id="p_name" value="<?php echo $row_RecordsetZ['p_name']; ?>" size="20" /></td>
     <td><input type="submit" value="Update" id="update" name="update"/></td>
  </tr>
</form>

您提交的查询将是

$sql=mysql_query("UPDATE POSITION 
                  SET p_name='$p_name' 
                  WHERE p_name='".$p_name."' AND p_id = '".$_POST['p_id']."'");