ugrás a tartalomhoz

több radio csoport elhelyezése egy adatbázisból

dollij · 2013. Aug. 3. (Szo), 13.45
Egy adatbázisból szeretnék ciklussal kiíratni "X"db kérdést és az azokhoz adott válaszlehetőségeket. Kérdés, hogy hogy tudom a csoport nevét ciklusonként különböző névvel ellátni automatikusan. Cél, hogy minden cikluslefutás egy egy külön radio csoportot jelentsen.
 
1

A csoport alatt a html

hunkris · 2013. Aug. 3. (Szo), 13.51
A csoport alatt a html osztályokat érted? És mit értesz a különböző név alatt? Szám vagy betű van bennük?
2

radio name

Pepita · 2013. Aug. 3. (Szo), 15.38
  1. <input type="radio" name="kerdes_01" id="kerdes_01_01" />  
  2. <input type="radio" name="kerdes_01" id="kerdes_01_02" />  
  3. <input type="radio" name="kerdes_02" id="kerdes_02_01" />  
  4. <input type="radio" name="kerdes_02" id="kerdes_02_02" />  
  5. ...  
A címkézést label-lel rád bízom. Szerintem ilyesmire gondolsz, de kód hiányában ez csak egy fél specifikációnak tűnik...
3

Köszi

dollij · 2013. Aug. 3. (Szo), 15.58
Igen erre gondoltam. Az lenne a kérdés, hogy ezt hogyan lehet úgy elérni, hogy adatbázisból olvassa ki a kérdéseket és a hozzá tartozó válaszokat egy while ciklussal, közben tudja, hogy minden kérdés más más csoportba tartozik.
Így gondoltam, de nem működik:

<?
$i=1;
while $tomb = mysql_fetch_array($query){
$i++;
?>
<input type="radio" name="csop".<?print $i?>."> // itt van a problémám.... hogy tudok hivatkozni a mindig egyel növekvő ciklusszámra, tehát, hogy csop1, csop2, csop3.... legyen?
}

?>
4

Újra

Pepita · 2013. Aug. 3. (Szo), 16.06
Ezt tedd be újra, kódszínezővel, vagy kérj meg rá egy szerkesztőt, hogy helyetted kivételesen színezze. Bocs, de addig én nem, mert kifolyik a szemem.
A teljes kódot meg nemigen szoktuk megírni helyetted, próbálkozz, majd segítünk, ha látjuk, hogy próbálkozol és megmondod min akadtál el. Tényleg bocs, de színezetlen kódra már rá sem nézek.
5

A színezésből is látszik, hogy hibás

dollij · 2013. Aug. 3. (Szo), 16.38
  1. <?  
  2. $i=1;  
  3. while $tomb = mysql_fetch_array($query){  
  4. $i++;  
  5. ?>  
  6. <input type="radio" name="csop".<?print $i.?>  
  7. <?  
  8. }  
  9.   
  10. ?>  
6

Ajjaj

Pepita · 2013. Aug. 3. (Szo), 20.28
Tényleg olvass többet, mielőtt nyilvános eredményt akarsz! Ehhez türelem kell.

1. short_tags (asp_tags?) lehet, hogy off a szerveren (fejből írom, hasonló nevű a direktíva), nagyon nemajánlom a használatát.
2. Fogalmad sincs, mikor "vagy" PHP ill. HTML. Az inputos sor helyesen:
  1. <input type="radio" name="csop<?php print $i;?>" />  
feltételezve, hogy az i változó szerint akarod feldolgozáskor is azonosítani a válaszokat. Ugye tudod, hogy erre még csak pöttyöket kapsz, felirat nélkül, és kérdésenként egyet?
3. Először is tanuld meg a HTML-t tisztességesen, addig ne akarj PHP-t csinálni, mert sosem fogod tudni, mit rontottál el. Ebben a példádban rengeteg a hiba. MySql pedig csakis utána.

SZERK.: Bocsánat, ha bántó voltam.
7

OFF

Pepita · 2013. Aug. 3. (Szo), 20.29
Nálam okosabbak, egy kérdés:
a kódszínezővel lehet "több nyelvet" megadni? Kicsit hülyén néz ki így, én értem, de nem biztos, hogy mindenki.
9

Igen

Hidvégi Gábor · 2013. Aug. 4. (V), 08.09
Lehet, olvasd el a További lehetőségek linket ; )
8

vmi ilyesmi

szabo.b.gabor · 2013. Aug. 4. (V), 07.53
  1. <form method="POST" action="<?= $_SERVER['PHP_SELF'] ?>">  
  2. <?php foreach($csoportok as $idcsoport => $csoportKerdesek): ?>  
  3.     <?php foreach($csoportKerdesek as $idkerdes => $kerdes): ?>  
  4.         <label>  
  5.             <input type="radio" name="csoport_<?= $idcsoport ?>" value="<?= $idkerdes ?>" />  
  6.             <?= $kerdes ?>  
  7.         </label>  
  8.     <?php endforeach; ?>  
  9. <?php endforeach; ?>  
  10. </form>  
természetesen a használt változókat előtte fel kell töltened, meg átírni ami neked kell ha szükséges.

remélem segítettem valamennyit.

alternative syntax - szerintem hasznos 'template'-eknél
echo shortcut syntax - 5.4 óta működik short open tag nélkül is, mielőtt fejemet szeditek