- Home
- Categorie
- Coding e Sistemistica
- PHP
- Tabelle con selezioni
-
Tabelle con selezioni
Salve ragazzi, vi prego sno un pò in crisi
Devo creare un sito che contenga una sezione di po quella del seguente link:
http://www.smartwebadvertising.com/italiano/ordina.htmcliccando sui primi due "procedi" si arriva ad una tabella che prende i dati dal db, e crea la tabella relativa in html...da questa tabella poi sifanno le selezioni e andando avanti le selezioni vengon memorizzate e così via...qualcuno sa dirmi se c'è uno script per fare tutto ciò..o se è possibile come crearlo? fatemi sapere presto
vi rignrazio anticipatamente.
p.s. utilizzo cms come mambo, qndi se qcuno conosce un modulo che fa questa esatta cosa lo ringrazio anticipatamente!
ah e uso anche dreamweaver(se c dovesse essere qlke facilitazione tipo cn i form)
-
Allora..risolto il fatto di avere la tabella con i dati del db...ho risolto anche per i check..ma non so come fare a farli vedere nella pagina successiva...xkè li ho impostati credo correttamente ma quando clicco su prosegui la pagina è bianca...vi posto i 2 file:
primapagina.php
<?php
include("config.inc.php");
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");$result = mysql_query ("SELECT nome_offerta, descrizione, costo, posizione, id FROM sva_offerte ORDER BY posizione ASC;",$db) or die("Blabla");
while ($row = mysql_fetch_array($result)){
$nomecheck="chek".$row['id']; //nome che cambia per ogni checkbox
echo"<tr>"; //creiamo la riga
echo"<td><input type='checkbox' name='$nomecheck' value='ON'></td><td>".$row['nome_offerta']."</td><td>".$row['descrizione']."</td><td>".$row['id']."</td>";
echo"</tr>"; //fine riga
} //chiuso il ciclo while
echo"</table>"; //chiudiamo la tabella
?><table width="277" border="1" align="center">
<tr>
<td width="267"><form name="form2" method="GET" action="paginaseconda.php">
Prosegui
<input type="submit" name="prosegui" value="Invia">
</form></td>
</tr>
</table>Dove l'ultimo form2 è quello del tasto prosegui.
paginaseconda.php
<? echo "$nomecheck";?>
Perchè non mi restituisce niente?
-
Nessuno sa aiutarmi?
-
Il form con il tasto procedi devi aprirlo prima di fare i checkbox. Così sono fuori dal form e quindi cliccando sul bottone i check non ci sono...
-
Ho appena provato a metterlo prima ma niente..è uguale guarda l'ho messo prima e chiuso dopo:
<tr>
<?php
include("config.inc.php");
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
?>
<form name="form2" method="GET" action="secondapagina.php">
<?
$result = mysql_query ("SELECT nome_offerta, descrizione, costo, posizione, id FROM sva_offerte ORDER BY posizione ASC;",$db) or die("Blabla");
while ($row = mysql_fetch_array($result)){
$nomecheck="chek".$row['id']; //nome che cambia per ogni checkbox
echo"<tr>"; //creiamo la riga
echo"<td><input type='checkbox' name='$nomecheck' value='on'></td><td>".$row['nome_offerta']."</td><td>".$row['descrizione']."</td><td>?".$row['costo']."</td><td>".$row['id']."</td>";
echo"</tr>"; //fine riga
} //chiuso il ciclo while
echo"</table>"; //chiudiamo la tabella
?><table width="100" border="1" align="center">
<tr>
<td width="267">
Prosegui
<input type="submit" name="prosegui" value="Invia">
</form></td>
</tr>
-
In secondapagina $nomecheck non é definito. Devi usare $_GET['NOMEDELCAMPODELFORM']
Prova a stampare i valori di get
<? print_r($_GET); ?>
Così vedi cosa ti é stato passato!
-
Ok, stampando i valori di get mi spunta qsto:
Array ( [chek54] => on [prosegui] => Invia )
-
Questo vuol dire che nel form c'era un check di nome chek54 e che era selezionato.
A questo punto se usi $_GET['chek54'] e controlli se é on o off sai se é selezionato o meno.
Chiaramente quel 54 é l'id dell'offerta... sai te cosa farne...
-
Niente non funonzia... e cmq volevo che mi spuntava la lista delle cose selezionate con i vari campi..cioè non solo l'id delle cose selezionate
-
Devi fare una cosa tipo questa (nella seconda pagina!):
<? $result = mysql_query ("SELECT nome_offerta, descrizione, costo, posizione, id FROM sva_offerte ORDER BY posizione ASC;",$db) or die("Blabla"); while ($row = mysql_fetch_array($result)){ $nomecheck="chek".$row['id']; //nome che cambia per ogni checkbox if ($_GET[$nomecheck]) echo "ho selezionato " . $row['nome_offerta'] . " \n;" else echo "NON ho selezionato " . $row['nome_offerta'] . " \n;" } //chiuso il ciclo while ?>
-
Mi spunta questo :
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource nella linea:
$result = mysql_query ("SELECT nome_offerta, descrizione, costo, posizione, id FROM sva_offerte ORDER BY posizione ASC;",$db) or die("Blabla");
-
Era un esempio, mica tutto il codice.
Cmq manca la parte di apertura del db:<? include("config.inc.php"); $db = mysql_connect($db_host, $db_user, $db_password); if ($db == FALSE) die ("Errore nella connessione. Verificare i parametri nel file config.inc.php"); mysql_select_db($db_name, $db) or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php"); $result = mysql_query ("SELECT nome_offerta, descrizione, costo, posizione, id FROM sva_offerte ORDER BY posizione ASC;",$db) or die("Blabla"); while ($row = mysql_fetch_array($result)){ $nomecheck="chek".$row['id']; //nome che cambia per ogni checkbox if ($_GET[$nomecheck]) echo "ho selezionato " . $row['nome_offerta'] . " \n;" else echo "NON ho selezionato " . $row['nome_offerta'] . " \n;" } //chiuso il ciclo while ?>