gars hai ... i .VE le problème que je ne peux pas être récupéré encore ... j'ai un formulaire où l'administrateur a besoin d'approuver ou de rejeter la demande de réservation ... i ai défini le champ b_status dans l'utilisation de la table IN PROCESS valeur par défaut ... je veux mettre à jour la valeur b_status RÉSERVATION APPROUVÉE lorsque l'utilisateur clique sur le bouton APPROVE .. sinon, le b_status mettra à jour la valeur comme RÉSERVATION REJETÉE lorsque l'utilisateur clique sur le bouton REJETERerreur de mise à jour d'état (champ null)
voici le code du formulaire:
<?php
$db = mysql_connect('localhost','root')
or die ("unable to connect");
mysql_select_db('fyp',$db) or die ("able to select");
$sql="SELECT * FROM vehicle WHERE v_status='READY'";
$result = mysql_query($sql) or die ("Query failed!");
?>
<tr><td> </td></tr>
<tr>
<tr>
<td width="200"><font face="Arial" size="2" font color="#000000">Registration Number </font></td>
<td><select name="regno">
<option value="" selected>--Registration No--</option>
<?php while($row = mysql_fetch_array($result)){?>
<option value="<?php echo $row['regno']; ?>"><?php echo $row['regno']; ?></option>
<?php } ?>
</select></td>
<td><font face="Arial" size="2" font color="#000000">Reason</font></td>
<td><textarea name="reason" rows="3" cols="50 "value = ""></textarea></td>
</tr>
<?php
$db = mysql_connect('localhost','root')
or die ("unable to connect");
mysql_select_db('fyp',$db) or die ("able to select");
$sql="SELECT * FROM driver WHERE d_status='READY'";
$result = mysql_query($sql) or die ("Query failed!");
?>
<tr>
<td><font face="Arial" size="2" font color="#000000">Driver</font></td>
<td><select id = "d_name" name="d_name">
<option value="" selected>--Driver Name--</option>
<?php while($row = mysql_fetch_array($result)){?>
<option value="<?php echo $row['d_name']; ?>"><?php echo $row['d_name']; ?></option>
<?php } ?>
</select></td>
</tr>
<tr>
<?php
mysql_close($db);
?>
</table>
<p></p>
<center><input name="APPROVED" type="submit" id="APPROVED" value="APPROVED">
<input name="REJECT" type="submit" id="REJECT" value="REJECT"> </center>
</div>
</center>
ce qui est le code de la page de processus:
<?php
$db = mysql_connect('localhost','root')
or die ("unable to connect");
mysql_select_db('fyp',$db)
or die ("able to select");
$bookingno=mysql_real_escape_string($_POST['bookingno']);
$username=mysql_real_escape_string($_POST['username']);
$name=mysql_real_escape_string($_POST['name']);
$department=mysql_real_escape_string($_POST['department']);
$g_date=mysql_real_escape_string($_POST['g_date']);
$g_time=mysql_real_escape_string($_POST['g_time']);
$r_date=mysql_real_escape_string($_POST['r_date']);
$r_time=mysql_real_escape_string($_POST['r_time']);
$destination=mysql_real_escape_string($_POST['destination']);
$pass_num=mysql_real_escape_string($_POST['pass_num']);
$trip_purpose=mysql_real_escape_string($_POST['trip_purpose']);
$regno=mysql_real_escape_string($_POST['regno']);
$d_name=mysql_real_escape_string($_POST['d_name']);
$reason=mysql_real_escape_string($_POST['reason']);
$b_status=mysql_real_escape_string($_POST['b_status']);
$sql = "INSERT INTO `usage` VALUES('$bookingno','$username','$name','$department','$g_date','$g_time','$r_date','$r_time','$destination', '$pass_num','$trip_purpose','$regno','$d_name','$reason','$b_status')";
$query = "INSERT INTO `usage` VALUES b_status ='BOOKING APPROVED'";
$result = @mysql_query($query);
$query1 = "UPDATE driver SET d_status ='OUT' WHERE '$d_name'=d_name";
$result1 = @mysql_query($query1);
if(isset($_POST['APPROVED']))
{
$query2 = "UPDATE `usage` SET b_status ='BOOKING APPROVED' WHERE '$b_status'='IN PROCESS'";
$result2 = @mysql_query($query2);
}
if (isset($_POST['REJECT']))
{
$query3 = "UPDATE `usage` SET b_status ='BOOKING REJECTED' WHERE '$b_status'='IN PROCESS'";
$result3 = @mysql_query($query3);
}
//$result = mysql_query($sql) or die ("error!");
$result = mysql_query($sql) or trigger_error (mysql_error().' in '.$sql);
i.ve le problème sur le terrain de b_status .. gars plz ... me aider ya :-)
merci marc.j'ai changé la déclaration ,, mais il semble contenir erreur .. quand je veux approuvé une réservation, les données peuvent être sauvegardées..mais quand je veux enregistrer d'autres données, le sql dit que Il y avait des clés en double ... ce qui ne va pas avec l'instruction – user273551
Juste cela, vous insérez un enregistrement avec une clé primaire qui existe déjà dans la table. Vous ne fournissez pas vos définitions de table, mais je suppose que 'bookingno' est probablement la clé primaire, et vous essayez de créer un second enregistrement avec la même réservation –