Piccolo aiuto con i radiobox
Piccolo aiuto con i radiobox postato il 19/11/2011 19:18:02 nel forum programmazione, open source e hosting
Salve a tutti,
grazie mille in anticipo per coloro che mi daranno una mano ( :
Allora io sto lavorando su un codice di GDR CD 5.00 e quello che vorrei fare è convertire il seguente codice per la selezione razza in un radiobox; per la scelta del sesso renderlo un radiobox è stato facile, ma non so proprio dove mettere mano qua...
Magari un suggerimento se non è possibile avere una soluzione completa >.<
Ecco il codice:
<!-- Razza -->
<?php $query="SELECT id_razza, nome_razza FROM razza WHERE iscrizione=1 ORDER BY nome_razza"; $result=mysql_query($query); ?>
<div class="form_field" >
<select name="razza">
<?php while ($row=mysql_fetch_array($result)){ ?>
<option value="<?php print $row['id_razza']; ?>" <?php if(gdrcd_filter('get',$_POST['razza'])==$row['id_razza']){ print 'SELECTED'; } ?>>
<?php print gdrcd_filter('out',$row['nome_razza']); ?>
</option>
<?php } ?>
</select>
</div>
<?php if($PARAMETERS['mode']['racialinfo']=='ON'){ ?>
<?php } ?>
Pagine → 1 2
19/11/2011 19:38:37
<!-- Razza -->
<?php $query="SELECT id_razza, nome_razza FROM razza WHERE iscrizione=1 ORDER BY nome_razza"; $result=mysql_query($query); ?>
<div class="form_field" >
<?php while ($row=mysql_fetch_array($result)){ ?>
<input type="radio" name="razza" value="<?php print $row['id_razza']; ?>" <?php if(gdrcd_filter('get',$_POST['razza'])==$row['id_razza']){ echo 'checked="checked"'; } ?> />
<?php print gdrcd_filter('out',$row['nome_razza']); ?>"
<?php } ?>
</div>
<?php if($PARAMETERS['mode']['racialinfo']=='ON'){ ?>
<?php } ?>
L'ho scritto cosi' al momento, ma la logica e' questa vedi se va o ti da errore.
19/11/2011 21:03:43
Grande!
Funziona bene, dopo lo verificherò al 100% con la registrazione, ma visto che mi da le razze non dovrebbero esserci problemi ^^
Solo una domandina, è possibile farlo per orizzontale, invece di verticale?
20/11/2011 02:35:42
basta che giochi con i div:
metti un <div style="position:relative; float:left;"><input type etc /></div>
20/11/2011 12:00:35
Purtroppo viene fuori un bel casinuccio ahah
Però ho provato a fare da me una possibile soluzione al problema, vorrei sapere se potrebbe andare bene, quello che mi mette nel dubbio è l'id razza, poiché nella gestione razze mi appare come terzo, io ho messo il terzo multiplo di 1000, se è soltanto quello il problema non so dove andare a cercare per l'id in gdr cd 5.00 :)
<table cellspacing="0" cellpadding="0" border="0" align="center">
<tbody>
<tr align="center">
<td align="center">
<img border="0" height="50" width="100" src="percorso">
<br>
<input type="radio" name="mondo" value="<?php print $row['3000']; ?>" <?php if(gdrcd_filter('get',$_POST['razza'])==$row['3000']){ print 'SELECTED'; } ?>>
<br>
Nome razza
</td>
Beh metto soltanto la parte più importante, dopo c'è il resto del codice
20/11/2011 12:09:42
id_razza lo prende gdrcd tramite la query
$query="SELECT id_razza, nome_razza FROM razza WHERE iscrizione=1 ORDER BY nome_razza"
Quindi quel 3000 che hai messo e' inutile.
Altra cosa che non ho capito il codice ha un while, se vuoi usare una tabella il codice diventa molto piu' complesso perche' dovresti chiudere e creare una nuova riga ogni x <td>.
Le tabelle stanno andando in disuso per il piu' flessibile utilizzo dei <div>. Probabilmente puoi usare un width percentuale per semplificarti il lavoro oppure ti fai il calcolo in px.
Usa una struttura stile questa:
<div style="position:relative; width:800px;">
while () {
<div style="position:relative; float:left; width: 200px;">
<input ........ />
</div>
}
</div>
Giocando con i numeri puoi aumentare o diminuire le colonne :)
20/11/2011 12:17:15
Oh beh lo so che è un poco più complicato, ma mi trovo meglio in quel modo >.<
Quindi per farlo funzionare, riscrivo la parte di input così?:
<input type="radio" name="mondo" value="<?php print $row['name_id']; ?>" <?php if(gdrcd_filter('get',$_POST['razza'])==$row['name_id']){ print 'SELECTED'; } ?>>
20/11/2011 14:19:39
Ancora non riesco a risolvere il mio problema; ero partito con l'idea di fare la selezione razza in orizzontale in una tabella affinché gli iscritti potessero vedere anche l'immagine razza.
Io sono riuscito a fare la tabella e tutt'altro, ma come collego ogni singolo td alla rispettiva razza del gdr?
<!-- Razza -->
<table cellspacing="0" cellpadding="0" border="0" align="center">
<tbody>
</td>
<!-- Razza -->
<body bgcolor="#323232">
<table cellspacing="0" cellpadding="0" border="0" align="center">
<tbody>
<tr align="center">
<td align="center">
<img border="0" height="50" width="100" src="link.png">
<br>
<input type="radio" name="mondo" value="<?php print $row['name_id']; ?>" <?php if(gdrcd_filter('get',$_POST['razza'])==$row['name_id']){ print 'CHECKED'; } ?>>
<br>
RAZZA1
</td>
<td align="center">
<img border="0" height="50" width="100" src="link.png">
<br>
<input type="radio" value="3" name="mondo">
<br>
RAZZA2
</td>
</tr>
</tbody>
</table>
20/11/2011 23:20:16
il while e' il ciclo che estrapola dalla query e stampa il codice al suo interno per ogni razza trovata
21/11/2011 00:01:09
[..]
while($record = gdrcd_query($result, 'fetch')
{
?>
<tr>
<td>
<img src="il percorso all'immagine/<?php $nome_razza ?>".png />
<input type="radio" name="razza" value="<?php echo $id_razza?>" (isset($_POST['razza']) && $_POST['razza'] == $id_razza) ? 'checked' : '' ?> />
</td>
</tr>
<?php
}
?>
campato un po' lì perchè gdrcd non lo conosco, ma la logica essenziale è questa.
21/11/2011 12:13:22
CONSIGLIO: se vuoi capirci di più studia un po di html, php e mysql e non chiedere che ti facciano il codice per fare questa o quella cosa..
Esitem l'apposito forum di richiesta per vedere se c'è un programmatore disponibile a darti una mano, usalo.
Discussione seguita da
Pagine → 1 2
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Foundation Galactic Frontier ↗
Imperion ↗
New Orleans ↗
Crossout ↗
The Coven ↗
Hero Wars ↗
Tiles Survive ↗
Project Entropy ↗
Cafuné ↗
Tibia ↗
Sea of Conquest ↗