- Home
- Categorie
- Coding e Sistemistica
- PHP
- update che non risponde
-
update che non risponde
Un saluto a tutti, sto qui a comunicarvi una cosa molto strana, premetto che ho realizzato altre update e mi sono riuscite benissime, ma con questa mi sto impappinando
Vi posto subito il codice
pagina elenco.php
[PHP]
<table border="0" cellspacing="0" cellpadding="0">
<?php
echo"
<tr>
<td bgcolor='#EDF967' align='center' width='2' height='20'>
<td bgcolor='#EDF967' align='center' width='140' height='20'>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
<b>Descrizione</b>
</font>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#EDF967' align='center' width='80' height='10'>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
<b>Punteggio</b>
</font>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#EDF967' align='center' width='20' height='10'></td>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#EDF967' height='20'></td>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#EDF967' height='20'></td>
</tr>";
require '../connessione/Config.php';
require '../connessione/Connect.php';
$query_1=mysql_query("SELECT * FROM tabella_squadra_1 ORDER BY punteggio DESC")
or die("errore nella query;".mysql_error());
while($elenco_sq=mysql_fetch_assoc($query_1))
{
echo"
<tr>
<td width='2'></td>
<td align='left'>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
$elenco_sq[desc_squadra_1]
</font>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
<b>$elenco_sq[punteggio]</b>
</font>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#CDD1E1' align='left' width='2'>
<input type='text' name='t_punti' class='text'>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<a href='update_elenco.php?id_squadra=$elenco_sq[id_squadra_1]'>
<img src='images/t_modifica.gif' border='0'></a>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<input type='text' name='t_id_squadra' class='text' value='$elenco_sq[id_squadra_1]' />
</td>
</tr>
<tr>
<td bgcolor='#CDD1E1' height='2' colspan='8'></td>
</tr>";
}
?>
</table>
[/PHP]
pagina update_elenco.php
[PHP]
require '../connessione/Config.php';
require '../connessione/Connect.php';
$id_squadra=(isset($_GET['t_id_squadra']))? $_GET['t_id_squadra']:0;
$id_squadra=trim($_POST['t_id_squadra']);
$punti=trim($_POST['t_punti']);
if(get_magic_quotes_gpc())
{
$punti=stripslashes($punti);
}
$punti=htmlspecialchars($punti);
$punti=mysql_real_escape_string($punti);
$query_1=mysql_query("UPDATE tabella_squadra_1 SET
punteggio='$punti'
WHERE id_squadra_1='$id_squadra'")or die("errore nella query;".mysql_error());
mysql_close();
[/PHP]
La mia domanda è questa
E' giusto passare i dati in questo modo?
Dovrei usare il tag form, ma poi come faccio a passargli l'id_squadra?
Grazie in anticipo dell'aiuto
-
In alternativa a come stai facendo puoi utilizzare il tag form passando l'id_squadra come campo hidden.
-
Ciao deramer, premetto che il codice sopra non funziona, non riesco a modificare i campi, inserendo il tag <form> come farei a passare un id dinamico. Se noti io il campo id gia lo prelevo
[PHP]
<td>
<input type='text' name='t_id_squadra' class='text' value='$elenco_sq[id_squadra_1]' />
</td>[/PHP]
Ciao e grazie
-
Ciao danny1975,
[php]
$id_squadra=(isset($_GET['t_id_squadra']))? $_GET['t_id_squadra']:0;
$id_squadra=trim($_POST['t_id_squadra']);
[/php]La variabile la passi GET o POST?
-
Ciao e grazie, ti spiego cosa vorrei fare
Ho una classifica composta da 10 nomi nel db, utilizzo un ciclo while e la faccio stampare, quindi mi trovo la descrizione, il punteggio, poi una text vuota dove inserirò il nuovo punteggio ed un pulsante, in più in un'altra text mi sono fatto stampare l'id, adesso ho modificato un po le cose e sto lavorando così
[php]
<form name="invia" method="post" action="update_classifica.php">
<table border="1" cellspacing="0" cellpadding="0">
<?php
require '../connessione/Config.php';
require '../connessione/Connect.php';
$query_1=mysql_query("SELECT * FROM tabella_squadra_1 ORDER BY punteggio DESC")
or die("errore nella query;".mysql_error());
while($elenco_sq=mysql_fetch_assoc($query_1))
{
echo"
<tr>
<td width='2'></td>
<td align='left'>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
$elenco_sq[desc_squadra_1]
</font>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
<b>$elenco_sq[punteggio]</b>
</font>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#CDD1E1' align='left' width='2'>
<input type='text' name='t_punti' class='text' />
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<input type='image' value='mod_giocata' img src='images/t_modifica_reg.gif' />
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<input type='text' name='t_id_squadra' class='text' value=" . stripslashes($elenco_sq['id_squadra_1']) . ">
</td>
</tr>
<tr>
<td bgcolor='#CDD1E1' height='2' colspan='8'></td>
</tr>";
}
?>
</table>
</form>
[/php]
la pagina update è così
[php]
require '../connessione/Config.php';
require '../connessione/Connect.php';
$id_squadra=(isset($_GET['t_id_squadra']))? $_GET['t_id_squadra']:0;
$id_squadra=trim($_POST['t_id_squadra']);
$punti=trim($_POST['t_punti']);
if(get_magic_quotes_gpc())
{
$punti=stripslashes($punti);
}
$punti=htmlspecialchars($punti);
$punti=mysql_real_escape_string($punti);
echo $query_1=mysql_query("UPDATE tabella_squadra_1 SET
punteggio='$punti'
WHERE id_squadra_1='$id_squadra'")or die("errore nella query;".mysql_error());
[/php]
adesso non so come passargli idCiao:x
-
Devi inserire un form per ogni riga, ed inserire l'id come campo hidden o lo passi come get nell'action.
-
Sto facendo delle ricerche su come viene utilizzato l'id in un form, ma poi come faccio a mettere un form per ogni riga, io faccio un ciclo, non riesco a capire
Il problema sta nel fatto che io quando faccio fare delle modifiche creo un'altra pagina e quindi tutto va bene, adesso il problema e che tutto avviene nella stessa pagina
Ciao
-
Metti l'echo del tag form nel ciclo...
-
Ciao, con tutto il rispetto, non ci arrivo, in quanto sta cosa non lo mai fatta e mai lo vista, dalle mie ricerche sono arrivato a questo
[PHP]
form" action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
[/PHP]M potrebbe servire?
altrimenti penso di passargli la nottata:bho:
-
Il problema è di sapere come funziona un form, per cui php non avrebbe nulla a che fare con ciò realmente.
In ogni caso se tu hai 3 record, e vuoi consentire la modificare di questi record nella stessa pagina devi fare una cosa del tipo:<form method="post" action="pagina.php"> <input name="id" value="1" /> <input name="nome" value="Team 1" /> <input name="punti" /> <input type="submit" /> </form> <form method="post" action="pagina.php"> <input name="id" value="2" /> <input name="nome" value="Team 2" /> <input name="punti" /> <input type="submit" /> </form> <form method="post" action="pagina.php"> <input name="id" value="3" /> <input name="nome" value="Team 3" /> <input name="punti" /> <input type="submit" /> </form>
In questo modo i 3 form sono del tutto indipendenti tra loro, e l'id lo ricavi tramite post insieme agli altri campi interessati per quell' id.
-
Ciao e grazie, chi ci sarebbe arrivato da solo, non pensavo nenche che un form potesse essere inserito all'interno di un ciclo
aaaa come sono contento, ti posto il codice, anche perchè potrebbe servire
[PHP]
while($elenco_sq=mysql_fetch_assoc($query_1))
{
echo"
<form name='invia' method='post' action='update_classifica.php'>
<tr>
<td width='2'></td>
<td align='left'>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
$elenco_sq[desc_squadra_1]
</font>
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<font size='1' face='Verdana, Courier New, Courier, monospace'>
<b>$elenco_sq[punteggio]</b>
</font>
<td bgcolor='#CDD1E1' width='2'></td>
<td bgcolor='#CDD1E1' align='left' width='2'>
<input type='text' name='t_punti' class='text' />
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<input type='image' value='mod_giocata' img src='images/t_modifica.gif' />
</td>
<td bgcolor='#CDD1E1' width='2'></td>
<td>
<input type='text' name='t_id_squadra' class='text' value=" . stripslashes($elenco_sq['id_squadra_1']) . ">
</td>
</tr>
<tr>
<td bgcolor='#CDD1E1' height='2' colspan='8'></td>
</tr>
</form>";
}
[/PHP]
Grazie di nuovo
Un saluto da danny