S. O. S. Php & MySQL! Segítene nekem valaki?
Az, hogy ahogyan én gondoltam az nem akar működni. Alapból az a sor amit hibásnak ír (és ez még csak az egyik)
if(empty($_SESSION['userid']){
<- ez. amit nem tudom miért nem akar elfogadni. Ellenőriztem az összes zárójelet, pontosvesszőt... Nem találok hibát. Továbbá van egy rész ami vér ciki, de elfelejtettem, hogyan tudnám (A témák kilistázása néhány adattal mert ugye az id-jét nem akarom, hogy kiírja meg ilyenek) táblázat szerűen kiiratni az egyik táblám bizonyos adatait úgy, hogy az összes megjelenjen. Írtam rá valamit de gyanítom, hogy nem lesz jó. De már ennél a sornál elakadt. Az összeset ide beírni hosszú, de egyébként annyira még sem.
gondolatmenetel: Van 3 táblám:
Egyikben a felhasználók néhány alapvető adattal (név, azonosító, jelszó, e-mail, jogosultság, dátum ami a reg. időpontját jelzi meg id)
topik ami ami a kérdést, egy rövid leírást és a hozzászólások számát illetve a dátumot jelüli + id,
fórum amibe id, a topik id-je amihez a hozzászólás készül, felhasználó aki írta, sorszám (ami nem egyezik meg az id-vel hanem a szerint kapja hogy hány db hozzászólás készült előtte ami az aktuális topik id-jét viseli és hozzá adok egyet, dátum. Illetve egy válasz nevűt is előre felvettem, hogy egy aktuális válaszhoz eltárolja annak a sorszámát akiére válaszolni akar az illető, hogy a komment sarkába jelezze, hogy pl ,,válasz a 3. kommentre".
Tehát a táblák után lenne a kezdőoldal ahová kilistázásra kerülne a topikok sorban előre a legújabbak (tehát értelem szerűen id szerint csökkenő sorrendben) . Előtteviszont figyeli a session-t hogy be van-e jelentkezve, mert ha nem akkor bejön egy form bejelentkezés és kiírja, hogy a hozzászóláshoz szükséges. Majd csak akkor jelenik meg a hozzászólok fül, ha be van jelentkezve (ez esetben felül ki is jelentkezhet ekkor szintén újra tölti ahogyan a bejelentkezésnél az oldalt.) Aztán ha egyiket megnézi akkor tovább megy egy másik oldalra ahol ugyan az a bejelentkező form van, ha nincs session-ben érték ahol a bejelentkező id-jét tárolja. alatta a topik, a leírása meg néhány adat amit még az előző mozdulatnál a megnyitáskor egy új session-be tett bele a topik id-jét tárolva. Akkor szólhat hozzá ha bejelentkezett... ha kijelentkezik ismét a topik oldalára megy. Új hozzászólásnál pedig feltölti szépen a forum adatbázist. Illetve az előző oldalon ha a megnyitás helyett az új topik létrehozását választja egy külön oldalt tölt be ahol erre lehetősége van azoknak akik be vannak lépve. (mindenezt majd egy ember akinek 1-es értékű jogosultságot adtam meg, mert alap vetően 0, szóval ez az 1 ember majd törölheti a topik és a hozzászólást 1 gomb segítségével) na ez van bepötyögve php-ül:D csak nem működik.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
A kérdező kommentje:
"
if(empty($_SESSION['userid']){
<- ez. amit nem tudom miért nem akar elfogadni. Ellenőriztem az összes zárójelet, pontosvesszőt... Nem találok hibát. "
Oké, akkor tegyünk egy kísérletet a
if(empty($_SESSION['userid'])){
változattal is.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
A logika amúgy jó, szerintem meg tudod oldani magad is. Két dolog:
- remélem nem jelszavakat tárolsz, hanem jelszó hasheket (crypt, md5 fgvek)
- Hozzászólásszámot felesleges tárolni, kérd le a nem törölt postokat queryvel a topik ID szerint, és nyomj egy COUNT parancsot SQLben
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Nem kísérletet kell tenni, hanem az empty függvényt megfelelően használni, mondjuk úgy, hogy a zárójeleket nem hagyod le.
A szintaktika szó egyébként ismerős?
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
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!