[bglug] PHP + IE ... i misteri continuano
Nicola Benaglia
bglug@lists.linux.it
Wed, 21 Aug 2002 16:17:14 +0200 (CEST)
Ciao a tutti quelli ritornati dalle vacanze,
sto riguardando il mio problemino PHP + Internet Explorer .... di cui
avevo già scritto.
Usando IE non riesco a operare su un database, mentre con altri browser
sì.
Adesso invio la pagina generata e lo script php.
Questa è la pagina generata dopo che ho selezionato l'articolo da
cancellare.
<HTML>
<BODY>
<DIV align=center><H2>
ELIMINAZIONE MATERIA PRIMA</H2></DIV>
<TABLE width=50% align=center>
<TR><TD colspan=2>
<FORM ACTION="conf_mod_eli_mp.php" METHOD="post">
<TR><TD>Codice materia prima<TD><INPUT type="text" name="cod_mp"
value="123" disabled>
<TR><TD>Nome materia prima
<TD><INPUT type="text" name="nome_mp" value="acqua" disabled><BR>
<TR><TD colspan=2 align=center>
<INPUT type="hidden" name="mod_eli" value="eli">
<INPUT type="submit" value="conferma ELIMINAZIONE ">
</FORM>
<TR><TD>
<TR>
<TD colspan=2 align=center><A HREF=menu.php>Menu principale</A>
</TABLE>
</BODY>
</HTML>
Una volta confermato viene eseguito questo script php:
<?php
session_start();
include("tabelle.php");
?>
<HTML>
<BODY>
<?php
if ($mod_eli=="eli")
{
$id_conn=mysql_connect("localhost",$user,$pw);
$db=mysql_select_db("laboratorio",$id_conn);
$query="DELETE FROM $articoli WHERE cod_mp='$cod_mp'";
$ris=mysql_query($query,$id_conn);
echo "$user <BR>"; /*********** INSERITE PER PROVARE IL
echo "$cod_mp <BR>"; PASSAGGIO
echo "$id_conn <BR>"; DELLE
echo "$query <BR>"; VARIABILI
echo "$ris <BR>"; ****************************/
if ($ris)
{
echo "<DIV align=center>Cancellazione avvenuta</DIV>\n";
echo "<DIV align=center><A HREF=menu.php>Menu
Principale</A></DIV>\n";
}
mysql_close($id_conn);
}
elseif ($mod_eli=="mod")
{
$id_conn=mysql_connect("localhost",$user,$pw);
$db=mysql_select_db("laboratorio",$id_conn);
$query="UPDATE $articoli SET nome_mp='$nome_mp',data_mp=NOW() WHERE
cod_mp='$cod_mp'";
$ris=mysql_query($query,$id_conn);
if ($ris)
{
echo "<DIV align=center>Modifica avvenuta</DIV>\n";
echo "<DIV align=center><A HREF=menu.php>Menu
Principale</A></DIV>\n";
}
mysql_close($id_conn);
}
?>
</BODY>
</HTML>
Adesso vi faccio vedere il risultato delle istruzioni ECHO sopra
evidenziate.
Con il browser Opera ottengo:
root
123
Resource id #1
DELETE FROM articoli WHERE cod_mp='123'
1
Cancellazione avvenuta
Menu Principale
E tutto viene eseguito correttamente. Il record con chiave 123 viene
cancellato.
Invece con IE5.5 ottengo:
root
Resource id #1
DELETE FROM articoli WHERE cod_mp=''
1
Cancellazione avvenuta
Menu Principale
In pratica non viene passata la variabile cod_mp e non viene quindi
eseguita l'operazione sul database.
Il codice mi sembra corretto..........con Opera funziona tutto benissimo e
anche con Mozilla.
Spero di essere stato chiaro.
Avete qualche idea ??? Qualche suggerimento per capire meglio il problema
?
grazie
Nicola
--
POWERED by ***** GNU/Linux *****
Linux User Group member: http://bglinux.linux.it
http://www.gnupg.org
Hexadecimal KeyID: 0x0262AF6D 2001-09-07 Nicola Benaglia <nico.ben@inwind.it>
Key fingerprint = C6D3 533F 5A7F C8AC D89C 0766 ADB2 BA0C 0262 AF6D