Autor Zpráva
starburst
Profil
jakým způsobem se dá napsat funkce která nahradí vsechny prázdné pole urcitým textem?
myslím tohle:

if($promena == "")
$promena = "nejaký text že uživatel nevyplnil nějakou z kolonek";
else $promena = "$promena";

ale abych jich tam nemusel psat tolik kolik mam promennych ve formulari ale napsal funkci vsechny vynechane mista zaplni napr "uživatel nevyplnil"

diky
BetaCam
Profil
Třeba odesílat data pomocí pole. Po odeslání překontrolovat v cyklu $val a pokud bude hodnota empty nahradit příslušný $key pole textem který požadujes. ve formuláři poté vypisovat value z tohoto upraveného pole.
Icka
Profil *
foreach ($_POST as $nazev => $hodnota) {
if (strlen($hodnota) == 0)) {
$nevyplneno = true;
}
}

if ($nevyplneno === true) {
echo "některé položky formuláře nebyly vyplněny!";
} else {
echo "vaše data byla úspěšně odeslána ke zpracování :-) ";
}
BetaCam
Profil
Icka

if (strlen($hodnota) == 0))

možná by bylo jednoduší použít funkci empty() tedy :

if (empty($hodnota))

ale popravdě si nejsem jist jestli tvůj script je to co starburst měl na mysli.

Možná by bylo lepší, kdyby tazatel zkusil dotaz ještě upřesnit vzhledem k tomu, že sme si ho každý vyložili jinak. :)
Icka
Profil *
Ano, moje odpověď je skutěčně trochu mimo otázku. Zkusím to tedy napravit:

$dopln = "uživatel nevyplnil";

foreach ($_POST as $nazev => $hodnota) {
if (empty($hodnota)) {


}
Icka
Profil *
Pardon, nechtěně jsem to odeslal dříve než jsem zamýšlel ;-)

foreach ($_POST as $nazev => $hodnota) {
if (empty($hodnota)) { $_POST[$nazev] = $dopln; }
starburst
Profil
jojo...opravdu jsem neměl namysli oznamit uzivateli ze neco nevyplnil aby to napravil, ale pouze doplnit to tabulky na patricne misto text "nevyplněno"...

jestli to dobre chapu tak to co psal Icka je misto promene $nazev mysleno nazev formulare?
BetaCam
Profil
jestli to dobre chapu tak to co psal Icka je misto promene $nazev mysleno nazev formulare?

Nechápes to dobře. $nazev je klíč v poli $_POST.
starburst
Profil
aha... ja nemam pouzity ve skriptu $_POST... takze to budu muset nejak prekopat...ale diky za postup te funkce!!! dogoogluju... díky moc!

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0