IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: PHP premenné

V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
virgis
Člen
Avatar
virgis:31.12.2013 18:05

Dobrý deň. Potrebujem premennú že niečo je niečo z databázy podľa prihláseného užívateľa. Viem že to mám možno zle a práve peto tu píšem lebo to nejde. Chápem že to môžem riešiť iním spôsobom lenže dvie podmienky WHERE v jenom SELECTE asi nenastavím. Nefunkčný návrh :

$mn_zarabac= mysql_query("SELECT money FROM members WHERE id='$id' ");

nejak takto to musím nastaviť lebo kód ktorí mi vypisuje veci je nastavený na niekoho iného nie na prihlásené ID tím pádom ako som hovoril nemôžem nastaviť podmienku aj pre jedného aj pre druhého. Ked je kód

WHERE usr='{$zarabac}'

tak sú dalsie podmienky za tímto nastavené pre zarábača a výpis dát z sql pred WHERE je tiež podľa zarábača. Keď je kód

WHERE id='$id'

tak je zase všetko pred WHERE a po ňom nastavené pre prihláseného. Neexistuje nejaký spôsob ako to vložiť do jedného kódu a jedné podmienky nastaviť pre jedného a druhé pre druhého ? Ale musí to byť v jednom kóde preto mi napadlo že to vyriešim takímto spôsobom jak som písal hore že budú podmienky nastavené pre zaraábača ale to $mn_zarabac by som potom vložil do tohto kódu: cca

WHERE usr='{$zarabac}'  AND '{$mn_zarabac}' >= 10

Proste sú dve spôsoby ja k vyriešiť ten môj problém bud to nejak spojit alebo to rozdeliť mne sa nedarí ani jedno tak prosím o pomoc. ďakujem.

 
Odpovědět
31.12.2013 18:05
Avatar
virgis
Člen
Avatar
virgis:31.12.2013 18:29

V podstate ide o premennú podľa databázy.

 
Nahoru Odpovědět
31.12.2013 18:29
Avatar
done
Člen
Avatar
Odpovídá na virgis
done:31.12.2013 19:41

Co přesně potřebuješ vypsat ? Já jsem z toho nepochopil co přesně chceš ?

 
Nahoru Odpovědět
31.12.2013 19:41
Avatar
virgis
Člen
Avatar
virgis:31.12.2013 19:46

Potrebuju vypsat to money FROM members

 
Nahoru Odpovědět
31.12.2013 19:46
Avatar
done
Člen
Avatar
Odpovídá na virgis
done:31.12.2013 20:00

Myslíš např.:

"SELECT * FROM `members` WHERE `usr_id`= $usr_id AND `money` >= 10"

Myslel jsem spíš co ti nefunguje, nebo co máš za problém ?

 
Nahoru Odpovědět
31.12.2013 20:00
Avatar
virgis
Člen
Avatar
virgis:31.12.2013 21:14

Nefunguje tohle- chci nastavit promennú pro $mn_zarabac a to takhle:

$mn_zarabac= mysql_query("SELECT money FROM members WHERE id='$id' ");

jenže to neje. Proste chci nastavit aby bylo to mn_zarabac číslo money podle prihlseného IDčka ...

 
Nahoru Odpovědět
31.12.2013 21:14
Avatar
idc
Člen
Avatar
idc:31.12.2013 23:04

Používej místo MySQL MySQLi. MySQL je zastaralé a budoucnu bude odstraněno. Když zkusíš obsah proměnné vypsat přes var_dump, co dostaneš?

 
Nahoru Odpovědět
31.12.2013 23:04
Avatar
Odpovídá na virgis
Martin Konečný (pavelco1998):31.12.2013 23:26

Četl jsem to několikrát v delších časových intervalech a možná jsem konečně pochopil, co přesně chceš.

Pokud teda chápu správně, pak chceš vyhledat hodnotu sloupce 'money' z databáze podle podmínky id='$id' a tu hodnotu uložit do proměnné $mn_zarabac.
Pokud je to tak, potom musíš hodnotu najít (mysql_query("SE­LECT ...")) a projít (fetch).

<?php

$dotaz = mysql_query("SELECT money FROM members WHERE id='$id' ");
$data = mysql_fetch_assoc($dotaz);
$mn_zarabac = $data["money"];

Pokud hledáš pouze jednu hodnotu, stačí na to fce mysql_result(), která vrátí jednu hodnotu.

$dotaz = mysql_query("SELECT money FROM members WHERE id='$id' ");
$mn_zarabac = mysql_result($dotaz, 0);
Nahoru Odpovědět
31.12.2013 23:26
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
virgis
Člen
Avatar
virgis:31.12.2013 23:31

JO dekuji vám všem no presne to co mi napsal Quil si mi poslal i ty :) Takže to unguje to vám dekuji. Ted ruhá vec nevím proč to nejde. Co ale když chci získat takouto premnenou money ale né od id ale od toho ?

usr='{$zarabac}'

když to tam dám tak to nejde. Usr je jméno v dt kteé zadávam do formulára to se postuje dobre jen mi ten nefugnuje vložit tam to usr='{$zarabac}' :) Když tak fakt dekuju

 
Nahoru Odpovědět
31.12.2013 23:31
Avatar
Martin Konečný (pavelco1998):31.12.2013 23:52

Když si vypíšeš mimo proměnnou $zarabac, co se zobrazí? (Nejlépe zkus var_dump($zara­bac)).
Pokud to zobrazí jméno, zkontroluj si, jestli sedí i velikost písmen.

Nahoru Odpovědět
31.12.2013 23:52
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
virgis
Člen
Avatar
virgis:1.1.2014 12:35

Oukej vyriešené chyba bola v podmienke kde nemali byť tie zátvorky :) Ďakujem

 
Nahoru Odpovědět
1.1.2014 12:35
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 11 zpráv z 11.