Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: php kysymys

ViKiNGi [10.10.2011 10:01:31]

#

Moi,

Taas sarjassamme tyhmät kysymykset, johon viisaat vastaavat..

Tällainen kuvaus ongelmasta, jota en vain osaa fiksata.

$tietue[]
= renkaat
= vanteet
= venttilit

pitäs saada mysql_queryyn

INSERT INTO taulu WHERE joku = jotain SET $tietue[] = $tuloste[];

Eli olen tekemässä funktiota, jossa tuon tietue kohdan korvaakin jokin valituista elementeistä..

tai SELECT id, nimike, kuvaus WHERE renkaat = "nokia"; Siten kuitenkin, että tuo kohta renkaat olisi muuttuva tarpeen mukaan..

aika huonot selitykset, mutta kerron lisää jos tarvetta.

Grez [10.10.2011 10:44:17]

#

INSERT INTO ... WHERE ... SET ... ei taida ihan lähtökohtaisesti toimia.

Ylipäätään insert into ja where ei oikein sovi yhteen. Jos taas UPDATE taulu niin SET tulee ennen WHEREä.

Jos nyt oletetaan että taulukkojen arvoille on jo tehty tarvittavat käsittelyt, niin (muuttujien nimistä en nyt viitsi kommentoida)

HUOM! Alla olevat koodit olettaa, että $tuloste on valmiiksi käsiteltyjä, eli siellä on esim. "nokia" lainausmerkkeineen kuten esimerkissäsi ja erikoismerkit eskeipattuina. (Mitä kantaa muuten käytät jos merkkijonon merkkinä on lainausmerkki? )

Jos INSERT INTO

$kysely = 'INSERT INTO taulu (' . implode(',', $tietue) . ') VALUES (' . implode(',', $tuloste) . ')';

Jos UPDATE

for ($i=0; $i < sizeof($tietue); $i++) {
  $päivitys[] = $tietue[$i] . "=" . $tuloste[$i];
}
$kysely = 'UPDATE taulu SET ' . implode(',', $päivitys) . ' WHERE joku=jotain';

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta