HTML, PHP, SQL kérdés?
Szóval a helyzet az hogy eddig csak html-el és sql-el foglalkoztam és már egy ideje össze akarom kapcsolni a kettőt és úgy látom hogy ehhez a php kell nekem.
A konkrét kérdésem az lenne hogy hogy lehet olyan gombot csinálni amire hogyha kattintunk az adatbázisban egy szám mező egyel nagyobb legyen?
Tehát annyi hogy mondjuk van egy mező aminek éppen 9 az értéke. Rányomok a gombra és az érték 10-re változik.
Ez volt az első.
A második kérdésem:
Találtam ezt kódot:
<?php
function random_pic($dir = 'images')
{
$files = glob($dir . '/*.*');
$file = array_rand($files);
return $files[$file];
}
?>
<center>
<img src="<?php echo random_pic(); ?>" height="500" width="500"/>
Ez annyit csinál hogy az images mappában lévő képek közül random kiválaszt 1-et és megjeleníti.
A kérdésem az, hogy hogy lehetne egy változóba kiszedni az éppen random kiválasztott kép nevét?





Hadd kezdjek a 2. kérdéssel.
Azért ebből:
$files = glob($dir . '/*.*');
$file = array_rand($files);
return $files[$file];
Igazán láthatnád, hol van a kiválasztott fájl neve. :)
Csak gondold végig mit csinálnak a sorok.
Az első kérdés:
Ehhez én azt javaslom, hogy az űrlapfeldolgozásnak nézz utána.





Nem a $file az.
Akkor gondolkodjunk együtt.
Van egy függvény, a neve random_pic().
Ezt a függvényt meghívja a PHP szkript ott, ahova a kép fájl elérési útja kerülne:
<img src="<?php echo random_pic(); ?>"
Innen az következik, hogy a függvény visszaadja a kép fájl nevét.
Ránézünk újra a függvényre. Nézzük meg mit ad vissza:
return $files[$file];
Ergó: a képfájl neve a $files[$file]. Vagyis a $files tömb $file kulccsal/indexszel rendelkező eleme.
Tovább információ, amit a PHP doksi szorgos olvasgatásával nyerhettél volna ki, de most pótoljuk:
- az array_rand() egy tömböt kap paraméterül és visszaad a kulcsokból egyet, amelyet véletlenszerűen választ ki
http://php.net/manual/en/function.array-rand.php
-*-
"em tudom hogy hogy tudom kiírtani a html-be"
Pedig jól látszik a fenti mintán.
Az <img src="..." -ben ki van íratva, ha jól megnézed.
Ha azt akarod, hogy ugyanezt a fájlnevet írasd ki máshol is, akkor azt kell tenned, hogy letárolod a random kiválasztott fájlnevet egy változóban, és azt íratod ki az általad kívánt helyre és az src paraméterbe is.
Megmutatom:
<?php $randomkep = random_pic(); ?>
<img src="<?php echo $randomkep; ?>" height="500" width="500"/>
<p>A képfájl neve: <?php echo $randomkep; ?></p>
Érdemes lenne (1) egy PHP könyvet elkezdeni elölről, (2) doksit olvasni. :)
na szóval. Rájöttem hogy butaságot írtam mikor azt írtam hogy a $file-ban van még mielőtt elolvastam a válaszodat.
Egyébként ezt a függvényt kukáztam. Kerestem egy másikat és sikerült megoldanom.
Mert igazából ez úgy van hogy random választ egy képet, aminek van id-je az adatbázisban (a kép neve az id) és társul hozzá egy érték ami jelent esetben a pontszáma.
És most már ki is tudtam íratni a random választott képhez a saját pontszámát, tehát ezzel kész vagyok.
Most az a cél hogy a pontszám mellett lévő 'Szavazok' gombra kattintva egyel növekedjen a kép id-hez társított pontszáma.
Na most ezzel a gombbal viszont tényleg nem tudom mit kezdjek hogy jó legyen. Ja és eddig nem si írtam hogy mindenből 2 van. Két random kép és hozzájuk pontszámok és gombok.
És nem tudom hogy hogy tudnám ezt a gombos dolgot megcsinálni.





Utánanéztél az űrlapfeldolgozásnak? :)
A lényegi működést itt pölö láthatod:
És hogy a te szavazódban mi az űrlap? Igazából 2 megoldást is el tudok képzelni.
(A) A képek alatt rádiógombok vannak, és egyetlen szavazógomb van. Ez esetben van egy formod, és annak van egy változója, ami tárolja, mely kép lett kiválasztva.
(B) A képek alatt 1-1 szavazógomb van. Ez esetben van 1-1 formod a 2 képhez. A formokban nincs ugyebár input adat, viszont rejtett adatként (input type="hidden") eltárolhatod, hogy mely képre történt szavazás a szavazógombbal.
Mindkét esetben a szavazógomb hatása az, hogy GET vagy POST (teszteléshez jó a GET, de ha publikálod, legyen POST) kérésként elküldi a szervernek (és azon belül a szavazást feldolgozó PHP szkriptnek) az űrlapadatokat (mely kép lett kiválasztva), és a szerver (PHP szkript) módosítja az adatbázist, és generál egy választ: például visszaadja ugyanazt a 2 képet, de már inaktív gombokkal vagy másik 2 random képet.
A szavazást feldolgozó PHP és a szavazást megjelenítő PHP persze lehet ugyanaz, sőt, én ezt tartanám célszerűnek.
köszi a választ. most olvastam el és már nincs erőm foglalkozni agyalós dolgokkal :/
majd holnap megpróbálom. igazából én úgy szeretném hogy 1-1 gomb és szavazás után egyből jöjjön megint két random kép :D
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!