Autor | Zpráva | ||
---|---|---|---|
pcmanik Profil |
Zdravim potrebujem zistit ci v tabulke v urcitom stlpci je nieco napisane alebo nieje.
Davam konkretny sql dotaz SELECT kartel FROM uzivatelia WHERE id='{$_SESSION['id']}' A teraz potrebujem spravit podmienku ze ak tam nieco je tak napise napr vyplnene a ak tam nic neni napise nevyplnene a vazne nwm ako to mam spravit |
||
radvis Profil * |
#2 · Zasláno: 27. 4. 2010, 21:28:54
mužeš napsat celý řádek? Může to být třeba takhle:
$query = mysql_query("SELECT kartel FROM uzivatelia WHERE id='{$_SESSION['id']}' "); if($query){ echo "užuvatel tu je"; }else{ echo "uživatel tu není"; } |
||
pcmanik Profil |
jj presne to myslim avsak vzdy to vypise uzivatel tu je aj ked v tom stlpci nieje nic vyplnene a ja to potrebujem tak spravim ze ked tam nic nebude tak to napise ze uzivatel tu neni.
resp. mam taky kod na to ale akosi to nechce fungovat if(mysql_result($vysledok,0,5)) { header("Location:http://$HTTP_HOST/hra/index.php"); } else { echo "<center>"; echo "Tu si mozete vytvorit novy kartel"; echo "<br>"; echo "<br>"; echo "<form method=\"post\" action=\"novy_kartel.php\">"; echo "<input name=\"kartel\" value=\"\" type=\"text\">"; echo "<br>"; echo "<br>"; echo "<INPUT type=\"submit\" value=\"Vytvoriť\">"; echo "</form>"; echo "</center>"; } a takto mam tabulku ak to pomoze `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `meno` VARCHAR( 10 ) NOT NULL , `heslo` VARCHAR( 10 ) NOT NULL , `email` VARCHAR( 30 ) NOT NULL , `spolocnost` VARCHAR( 20 ) NOT NULL , `icq` VARCHAR( 15 ) NOT NULL , `kartel` TEXT NOT NULL , `info` TEXT NOT NULL Moderátor Majkl578: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
Moderátor Majkl578: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
|
||
__construct Profil |
#4 · Zasláno: 27. 4. 2010, 21:43:30
Za prvý kód dávaj do Ctrl+E
Za druhé neviem ako súvisí tá MySQL tabuľka ten tvoj formulár a už vôbec ten prvý príspevok .. |
||
pcmanik Profil |
#5 · Zasláno: 27. 4. 2010, 21:55:21
Napíšem to sem všetko polopate. Pracujem na jednej webovej hre v php.
Mam vytvorenu tabulku uzivatelia `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `meno` VARCHAR( 10 ) NOT NULL , `heslo` VARCHAR( 10 ) NOT NULL , `email` VARCHAR( 30 ) NOT NULL , `spolocnost` VARCHAR( 20 ) NOT NULL , `icq` VARCHAR( 15 ) NOT NULL , `kartel` TEXT NOT NULL , `info` TEXT NOT NULL A teraz mám stránku kartel kde chcem zistiť či už užívateľ je v nejakom karteli alebo nieje. V tom prípade, ak je by som mu vypísal nejaké informácie o tom karteli, to teraz, ale nieje podstatne a v kóde to označím ako INFO O KARTELI. Ale ak nieje tak by som mu dal jednoduchý formulár kde by zadal názov nového kartela. Takýto skript som si spravil, ale nechce fungovať. - kvôli prehľadnosti odrežem začiatok s pripojením k db a so sessions. $vysledok = mysql_query("SELECT * FROM uzivatelia WHERE id='{$_SESSION['id']}'"); if (!$vysledok) { die('Problem s databazou.'); exit(); } else { if(mysql_result($vysledok,0,5)) { INFO O KARTELI } else { echo "<center>"; echo "Tu si mozete vytvorit novy kartel"; echo "<br>"; echo "<br>"; echo "<form method=\"post\" action=\"novy_kartel.php\">"; echo "<input name=\"kartel\" value=\"\" type=\"text\">"; echo "<br>"; echo "<br>"; echo "<INPUT type=\"submit\" value=\"Vytvoriť\">"; echo "</form>"; echo "</center>"; } } Dúfam, že som to dostatočne vysvetlil a ospravedlňujem sa za nepoužitie kódu v pre... |
||
radvis Profil * |
#6 · Zasláno: 27. 4. 2010, 21:57:34
Tak tomu nerozumím.
|
||
__construct Profil |
#7 · Zasláno: 27. 4. 2010, 22:08:42
Čo sa týka toho skriptu tak ja tam nejakú zásadnú chybu nevidím ..
inak to exit(); môžeš vymazať - die(); bohate stačí .. jediné čo ma napadá je použitie num_rows .. $pocet_riadkov = mysql_num_rows($vysledok); a potom namiesto podmienky !$vysledok daj: if($pocet_riadkov > 0) |
||
pcmanik Profil |
#8 · Zasláno: 27. 4. 2010, 22:41:11
uz som to vyriesil mozete to tu delete
|
||
AM_ Profil |
#9 · Zasláno: 27. 4. 2010, 23:47:41
pcmanik:
„uz som to vyriesil mozete to tu delete“ Vyřešená témata se nemažou, raději jsi měl napsat, jak jsi to vyřešil, třeba se to jednou někou bude hodit. [#2] radvis Toto nebude dělat to, co jsi myslel. mysql_query() vrací mysql resource při úspěchu (úspěch je i úspěšné vyzvednutí 0 řádků) a false při chybě (prázdný výsledek dotazu rozhodně není chyba). Tím spíše mysql_query() nevrací přímo hodnotu prvního sloupce na prvním řádku výsledku. |
||
Časová prodleva: 14 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0