Autor Zpráva
Tonny
Profil *
Ahoj,
mám 4x <select>
každý se pochopitelně jmenuje jinak, řekněme že třeba a,b,c,d

Každému z nich může uživatel přiřadit hodnotu od 1do 4.
Tzn.: výsledek může vypadat např. takto: $a=3,$b=1,$c=2,$d=4,

Já bych z toho potřeboval nakonec udělat řetězec
$poradi = $a."-".$b."-".$c."-".$d.";
v tomto konkrétním případě tedy:
$poradi = $b."-".$c."-".$a."-".$d.";

Navíc by asi bylo potřeba nějak zajistit, aby pokud uživatel zadá u dvou stejnou hodnotu mu to napsalo chybovou hlášku, ale priorita je hlavně to seřadit, s tímhle blbuvzdorným opatřením už si snad nějak poradím :)

Předem dík moc :)


* $poradi = $a."-".$b."-".$c."-".$d;
Chro
Profil
$pole = array($a, $b, $c, $d);
if (count(array_unique($pole)) < 4)
{
echo 'chyba, zadal(a) jste stejne hodnoty';
}
else
{
natsort($pole);
$vysledek = implode('-', $pole);
echo $vysledek;
}



EDIT:
Ale nevím, jaký to má smysl. Výsledek bude v popsaném případě vždy 1-2-3-4.
Tonny
Profil *
Omlouvám se, nedošlo mi to dřív než jsem to ted zkusil, ale potřeboval bych aby se mi do toho $vysledek zapsali jména těch proměnných v tom pořadí, podle čísel.

tzn že místo $poradi = $b."-".$c."-".$a."-".$d.";
potřebuji $poradi = b-c-a-d;

Omlouvám se a děkuji za tento nápad :)


Má to sloužit k tomu aby si přihlášený uživatel mohl uspořádat určité rámy podle toho, které nejvíc potřebuje ...
Na jedné stránce mám tabulku, dke nahoře jsou jména jednotlivých rámu a pod nimi, tyto selecty ... a čísla v nich vyjadřují pořadí.
to se potom uloží do databáze a později se pomocí toho vypisuje jiná stránka
Chro
Profil
V tom případě
$pole = array(
'a' => $a,
'b' => $b,
'c' => $c,
'd' => $d
);
natsort($pole);
$vysledek = implode('-', array_keys($pole));
echo $vysledek;
Tonny
Profil *
Chro:
Skvělí :) děkuji ... jen poslední věc, to ověření toho, jestli nesou dvě čísla stejná se dělá stejně jako v předchozím případě nebo jinak ?


*nejsou
Chro
Profil
Úplně stejně
$pole = array(
'a' => $a,
'b' => $b,
'c' => $c,
'd' => $d
);
if (count(array_unique($pole)) < 4)
{
echo 'chyba, zadana stejna cisla';
}
else
{
natsort($pole);
$vysledek = implode('-', array_keys($pole));
}

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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