Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 3.940 pregleda

Najnovija ↓

potrebno objasnjenje 17.01.2008. u 08:55 · pre 228 meseci #1
U php skriptu sam uveo promenljivu-string koja predstavlja malo slozeniji sql upit i radi preglednosti sam ga predstavio u formi:
$sql = "**************" .
"..............................." .
"..........................".
"..........................";

Zasto ovako kreiran upit ne prolazi?
Tek kad upit predstavim kao niz stingova i onda ih spojim dobijam zeljeni reziltat?
Dakle:
$sql1=".............";
$sql2=".............";
.
.
.$sqln=".............";

$sql="$sql1....$sqln";

Definitivno mi je nesto promaklo.
Re: potrebno objasnjenje 17.01.2008. u 09:26 · pre 228 meseci #2
Pisi normalno, ne zatvaraj string i liniju a da nisi zatvorio liniju sa ;, jer php misli da si zavrsio sa tom linijom. Ako zelis . (konkatenaciju), to mora u istom redu.
Dakle, ili pisi (primer):

$sql = " SELECT *
FROM tabela
WHERE uslov
ORDER BY po_cemu";

ili pisi slicno kao u drugom primeru (samo sa jednom promenljivom, sta ce ti tolike):

$sql = " SELECT * ";
$sql .= "FROM tabela ";
...

Obrati paznju da je kod drugog reda .= a ne samo =, sto znaci na $sql dodaj ovo iza napisano. Pogledaj
http://www.php.net/manual/en/language.operators.assignment.php
Potpis
Kad sve ostalo zakaže, pročitaj uputstvo...
Re: potrebno objasnjenje 17.01.2008. u 10:50 · pre 228 meseci #3
Vec sam pokusao sa varijantom

Code:

$sql = "SELECT *
FROM tabela
WHERE
...";


i dalje ne pomaze. Ali bar sam dobio odgovor zasto onaj sql ne prolazi. Koriscenje operatora .= i nije bas neko resenje u ovoj situaciji, ipak svaki put nanovo ispisujes $sql.=.
Re: potrebno objasnjenje 17.01.2008. u 11:42 · pre 228 meseci #5
Jedna promenljiva u samom sql nije bila pod jednostrukim navodnicima.
Code:
$sql = "SELECT....
         WHERE '$variable' = MATCHES ....
         ....";
Re: potrebno objasnjenje 17.01.2008. u 12:29 · pre 228 meseci #6
Citat:
dakipro: A zasto ova poslednja varijanta ne prolazi?
Mislim, to je klasican nacin pisanja upita, nema razloga zasto ne bi proslo. Koja je greska?


Dugo sam tako radio.Onda je naišao slučaj kad to jednostavno nije htelo da radi.Zašto, nemam pojma.
Od tada, upit pravim ovako:
Code:

$q  = "SELECT t1.nesto, t2.nesto ";
$q .= "FROM tabela AS t1 ";
$q .= "LEFT JOIN druga_table AS t2 ON (t1.polje = t2.polje) ";
$q .= "WHERE t1.polje2 = '$nesto'";
...
Potpis
Powered by Slackware 13
Re: potrebno objasnjenje 18.01.2008. u 12:41 · pre 228 meseci #7
Znam da sam surov i da preterujem ali moraju se postuju pravila. I pre nego se pocne pisati po nekom forumu, moraju se procitaju pravila koja vladaju u tom forumu. Na primer, kako se imenuju teme!

LOCK
Tema je zaključana, nove poruke nisu moguće.

Premeštanje teme