[ Googladzija @ 24.01.2017. 17:23 ] @
trebam iz forme procitati vrijednost za input kontrole, cija su imena opis1, opis2, opis3...
njihove vrijednosti zelim da preuzmem kroz petlju pa da ih upisem u bazu.
ako se ne varam, ovo se rjesava preko varijable varijable, ali ne znam kako tacno.
pokusao sam vise kombinacija, ali nikako da ubodem sintaksu (ili logiku :) ). ovako nekako sam pokusao:
Code:

for ($i=1; $i < $sirina + 1; $i++) {

    $opisIme = $_POST['opis$i'];

    $sql = "INSERT INTO opisiusp (id, rbropis, opisi)
        VALUES ('$id', '$i', $$opisIme)";

    $conn->query($sql);
}

[ Googladzija @ 24.01.2017. 20:01 ] @
zna li neko zasto ni ovako nece da radi:
Code:

for ($i=1; $i < $sirina + 1; $i++) {

    $nekoime = ${"opis" . $i};

    $opisIme = $_POST[$$nekoime];

    $sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
            VALUES ('$id', '$i', '$opisIme')";

    $conn->query($sql);
}

[ VladaSu @ 24.01.2017. 20:27 ] @
A joooj druze :)
Code (php):

for ($i=1; $i < $sirina + 1; $i++) {

    $opisIme = $_POST['opis'.$i];

    $sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
            VALUES ('$id', '$i', '$opisIme')"
;

    $conn->query($sql);
}
 


Naravno tu se postavlja pitanje sta ako ne postoji opisX i nisi se zastitio od sql injection.
[ plus_minus @ 24.01.2017. 21:35 ] @
... a što se tiče samog naslova teme... moraš Googladzijo da budeš siguran da ..

Code (php):

$nekoime = $_POST["opis{$i}"];
 


.. daje 'string' i da već imaš definisanu promenjivu $string, sa ciljanom vrednošću, pre nego što ukucaš ..

Code (php):

$$nekoime
 



.. u protivnom će da bude notice-a na izvoz (ako parser podnese i sve ostalo). U petlji, pogotovo.
[ Googladzija @ 24.01.2017. 22:06 ] @
nazalost, nisam rijesio problem.

evo koda koji radi, ali meni treba u petlji:
Code:

$opis1 = $_POST['opisUsp1'];
$sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
        VALUES ('$id', '1', '$opis1')";
$conn->query($sql);

$opis2 = $_POST['opisUsp2'];
$sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
        VALUES ('$id', '2', '$opis2')";
$conn->query($sql);

$opis3 = $_POST['opisUsp3'];
$sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
        VALUES ('$id', '3', '$opis3')";
$conn->query($sql);

$opis4 = $_POST['opisUsp4'];
$sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
        VALUES ('$id', '4', '$opis4')";
$conn->query($sql);


[ plus_minus @ 24.01.2017. 23:01 ] @
Pa jel' ne radi onaj zadnji pseudo-primer od Vlade .. ?
Jesi li siguran da ti native php opcache modul nije iskeširao tu skriptu gde si probao Vladin primer (ako si uopšte probao) .. ?
Ne moraš restart, samo `reload` apache proces.. i to će da natera opcache da ponovo očita/iskešira sve..
[ Googladzija @ 25.01.2017. 00:37 ] @
Citat:
plus_minus: Pa jel' ne radi onaj zadnji pseudo-primer od Vlade .. ?
Jesi li siguran da ti native php opcache modul nije iskeširao tu skriptu gde si probao Vladin primer (ako si uopšte probao) .. ?
Ne moraš restart, samo `reload` apache proces.. i to će da natera opcache da ponovo očita/iskešira sve..

prvi put nisam nesto dobro napravio, ali evo po tvojim uputama ispade da je bilo potpuno ispravno ono Vladino.
hvala, drug!

Citat:
VladaSu:
A joooj druze :)
Code (php):

for ($i=1; $i < $sirina + 1; $i++) {

    $opisIme = $_POST['opis'.$i];

    $sql = "INSERT INTO opisiusp (id, rbropisu, opisu)
            VALUES ('$id', '$i', '$opisIme')"
;

    $conn->query($sql);
}
 


Naravno tu se postavlja pitanje sta ako ne postoji opisX i nisi se zastitio od sql injection.

hvala, Vlado! tacno ono sto mi je trebalo!
ma navedoh na ranijoj temi da sam strogi pocetnik pa lupetam svasta... bice bolje... :)
[ plus_minus @ 25.01.2017. 00:50 ] @
E ako je tako, naučio si nešto novo.. i to sasvim slučajno.

U glavnom php.ini config fajlu se nalazi linija/direktiva kojom možeš globalno da isključiš opcache na lokalnoj mašini dok vežbaš i praviš nešto/razvijaš.

Pre PHP 5.5 verzije čini mi se (ili 5.4) native PHP opcache nije postojao te ništa nije sprečavalo da automatski nakon osvežavanja stranice dobiješ promene koje si izmenio u skripti.

To kao što vidiš, sa novijim PHP verzijama, nije više slučaj. Taj native PHP opcache (zend opcache) je mnogo moćna stvar, ali - za produkciju. Za hostovane i gotove projekte. Ne i za rad u lokalu. I sam si skontao zašto.

Znači, pre nego što nastaviš dalje, onesposobi (prepravi tu liniju u glavnom php.ini fajlu u komentar ) zend opcache. Pa kad sve (komplet) završiš, uključiš ponovo, testiraš i tako.

Vidi koja je putanja (gde se nalazi fajl) do ciljanog php.ini sa `phpinfo()` funkcijom.
[ Googladzija @ 25.01.2017. 23:16 ] @
da, naucio sam. sreca pa evo imam gdje.

a taj opcache... kao kroz maglu da se sjecam pojma... i to gustu maglu... :)