Avko |
24.03.2020 12:33 |
Predmet:MYSQL spajanje imena table za pretragu
MYSQL
imam cetiri table: regija_zapad, regija_istok, regija_jug, regija_sjever
moze li se u mysql upitu spajati ime table od varijabli za pretrazivanje?
Sada radim ovako:
PreuzmiIzvorni kôd (Text):<?php
if($izbor==1){upit=mysql_query("SELECT * FROM regija_zapad WHERE kolicina>=1")}
if ($izbor==2){upit=mysql_query("SELECT * FROM regija_istok WHERE kolicina>=1")}
if($izbor==3){upit=mysql_query("SELECT * FROM regija_sjever WHERE kolicina>=1")}
if ($izbor==4){upit=mysql_query("SELECT * FROM regija_jug WHERE kolicina>=1")}
...
?>
htio sam smanjiti broj upita i svesti sve na jedan tako da tablu dobijem iz spajanja stringa, ali mi ne radi:
PreuzmiIzvorni kôd (Text):<?php
switch ($izbor) {
case 1:
$kojaRegija="zapad";
break;
case 2:
$kojaRegija="istok";
break;
case 3:
$kojaRegija="sjever";
break;
case 4:
$kojaRegija="jug";
break;
}
upit=mysql_query("SELECT * FROM "regija_" and "$kojaRegija" WHERE kolicina>=1")
?>
|
zxz |
24.03.2020 12:40 |
Predmet:Re: spajanje imena table za pretragu
PreuzmiIzvorni kôd (PHP):<?php
switch ($izbor) {
case 1:
$kojaRegija="regija_zapad";
break;
case 2:
$kojaRegija="regija_istok";
break;
case 3:
$kojaRegija="regija_sjever";
break;
case 4:
$kojaRegija="regija_jug";
break;
}
$upit=mysql_query("SELECT * FROM $kojaRegija WHERE kolicina>=1")
?>
|
Avko |
24.03.2020 12:50 |
Predmet:Re: spajanje imena table za pretragu
da to je to, zahvaljujem
postoji li mozda mogucnost unutar mysql upita spajanje, npr $nekiString + $promijenjiviString ? |
zxz |
24.03.2020 12:59 |
Predmet:Re: spajanje imena table za pretragu
U php sve postoji.
Sql je samo string za php ali za bazu je on upit.
$sql="SELECT $imepoljavariablaphp FROM " . $var1 . $var2 . " WHERE kolicina>=1"
U tvom slucaju:
$var1="regija_";
$var2="sjever";
Znaci $sql je samo obicni string sastavljen iz variabli i teksta.
Ako ga zelimo proslijediti bazi kao upit onda moramo ispostovati pravila upita sto u ovom slucaju jesmo.
Sada ga saljemo bazi:
$upit=mysql_query($sql"); |
Avko |
24.03.2020 18:16 |
Predmet:Re: spajanje imena table za pretragu
da, logično.
Nisam se toga sjetio.
Mozganjem nisam dosao do inspiracije.
Čini mi se da je jedan od ključnih elemenata zabavljanje uma (pogotovo podsvjesnog uma) nečim drugim - time kao da maknemo pritisak "sad moram naći rijesenje". Ali pri tom je bitno da je to čime ga okupiramo neÅ¡to Å¡to možemo raditi po automatici.
Meni zna pomoci za opustiti mozak:
- odlazak u birtiju (sada su zatvorene zbog korona virusa)
- šetnja, nesmijemo se šetati, moramo biti u kuci
- pjevanje, baš mi se i ne pjeva nakon svega sto se desava
eto,hvala jos jednom |
zxz |
24.03.2020 20:28 |
Predmet:Re: spajanje imena table za pretragu
Eto ostalo nam je samo to da smislis neki zadatak pa da ga rjesavamo a ti si dobar u tome. |
zxz |
05.07.2020 18:37 |
Predmet:Re: spajanje imena table za pretragu
Ako koristis duple znake navoda " onda u okviru njih svaka rijes koja ima ispred znak $ se smatra vriablom,
napr:
$variabla="neki drugi tekst"
$opet_var="dodatak"
echo "neki tekst $varibla pa opet tekst i $opet_var i opet tekst"; |
Gjoreski |
05.07.2020 22:11 |
Predmet:Re: spajanje imena table za pretragu
Ja bi ovde uradio UNION queri na sva tabela onda bi isao kriterija |
Avko |
06.07.2020 00:30 |
Predmet:Re: spajanje imena table za pretragu
Citiraj Gjoreski:Ja bi ovde uradio UNION queri na sva tabela onda bi isao kriterija daj primjer |
zxz |
06.07.2020 09:57 |
Predmet:Re: spajanje imena table za pretragu
Citat:znaci da napomenem ovo mi nije radilo;
-upit="SELECT * FROM ' $imeTable ' WHERE DATUM='$danasnjiDatum' " U ovom slucaju '$danasnjiDatum' je obican string. kao i ' $imeTable ' ,
Treba ukloniti ovj nabk ' |