Autor Zpráva
ivitek
Profil *
Dobrý den, potřeboval bych poradit s dotazem na databázi MySQL... "INSERT blablabla VALUES ('$id', '$nadpis', atd...)" jak tam místo $nadpis šoupnout $_POST['nadpis'] at se ty uvozovky kombinujou jakkoliv hází to chyby.... vyresil jsem to prechodne tim ze pred pripojenim do databaze dam $nadpis = $_POST['nadpis']... da se to nejak udelat abych mohl napsat dotaz "INSERT blablabla VALUES ('$id', $_POST['nadpis'], atd...)"
Dero
Profil
Nejsem si jistý, také si přiřazuji do proměnné, ale mohlo by ... INSERT neconeco VALUES($id, '$_POST[neco]', ...).
michaelkiller
Profil
a co tak skusit '".$_POST['nadpis']."' ... ale to som si len teraz vymyslel, nerucim za to... Prvy je jednoduchy apostrof a potom uvodzovky, dalej bodka....nazov premennej a potom zrkadlovo bodka, uvodzovky a apostrof.
Leo
Profil
Ono byste predevsim nemel slepe vsechno, co prijde POSTem cpat bez kontroly do databaze, zabezpeceni neni v tom, ze misto $jmeno napisete $_POST['jmeno'], Leo
ivitek
Profil *
ad Dero - bez uvozovek mezi hranatymi zavorkami to nejde
ad michaelkiller - děkuji, ale neklaplo to... zkouším dále...
ivitek
Profil *
takze to proste delat $nadpis = osetrit_data($_POST['nadpis']) - takhle to más smysl... BTW jediný kdo tam má právo vkládat jsem já takže já si tam nic škodlivého nevložím .-)
ivitek
Profil *
pak nemusim resit $_post[] v SQL dotazu...
Leo
Profil
"BTW jediný kdo tam má právo vkládat jsem já takže já si tam nic škodlivého nevložím .-)"

Opravdu? Chcete rict, ze nikdo jiny nemuze do prohlizece napsat adresu vaseho skriptu? Leo
printf
Profil
vkládání polí do řetězců se dělá buď:
$promena = "neco ".$pole["klic"]." atd...";
nebo:
$promena = "neco {$pole["klic"]} atd...";
vzhledem k tomu, že se jedná o sestavování dotazů do databáze, tak bych použil něco jako:
$promena = "neco ".osetri($pole["klic"])." atd...";
kde funkce osetri zajistí odstranění různejch zlobivostí.
krteczek
Profil
tohle funguje:

'{$_POST['promenna']}'

tento zápis 100% funguje, ale jak bylo zde již řečeno není to nejbezpečnější, dycky je lepší předat serverovou proměnnou do normální proměnné, nejlíp takhle:

$neco="";
if(!empty($_POST['promenna']) //zjistíme jestli je proměnná naplněna
{
$neco=osetrit($_POST['promenna']);//osetrit= funkce která zbaví nechtěných vecí, html kodu, obracených lomítek...
}
else
{
echo 'nevyplnili jste ...';
}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0