| Autor | Zpráva | ||
|---|---|---|---|
| WeeHool Profil |
Zdravím..
takže mám pole: $produkt[$pocet] = array( 'nazev' => $nazevorig, 'popis' => $popisorig, 'cena' => $sdph, 'obrazek' => $image, 'odkaz' => $goto, 'obchod' => $id ); if (isset($order))
{
foreach($produkt as $val)
{
$sortarray[] = $val[$order];
}
}
array_multisort($sortarray,$produkt);
foreach($produkt as $key => $val)
{
$nazev = $val['nazev'];
$cena = $val['cena'];
echo "$nazev $key $cena <br>";
}předem děkuji za odpověď.. |
||
| Darker Profil |
#2 · Zasláno: 17. 9. 2012, 23:17:35
function search($name, $value,$data) {
$matches = array(); //Pole vyhovujicich polozek
if(!is_array($value)) //Moznych hodnot muze byt vicero
$value=array($value);
foreach($data as $item) { //Prochazeni dat
foreach($value as $v) { //Prochazeni vyhovujicich hodnot
if($v==$item[$name]) { //Pokud hodnota polozky odpovida aktualni testovane hodnote
$matches[]=$item; //Vyhovuje!
break; //Konec zkoumani polozky
}
}
}
return $matches;
} |
||
| WeeHool Profil |
#3 · Zasláno: 18. 9. 2012, 00:14:10
tý jo.. díky za funkci.. zejtra se vrhnu na její začlenění do celýho skriptu.. jak tak na to koukám.. bude to sranda.. ale fakt moc díky..
|
||
| WeeHool Profil |
#4 · Zasláno: 19. 9. 2012, 15:50:19
takže průšvih..
řekněme, že mám tyhle dva produkty: $produkt[] = array( 'nazev' => "prvni", 'popis' => "takovyto", 'bezdph' => "dfsdfsd", 'cena' => "sdfsdf", 'obrazek' => "sdfsd", 'odkaz' => "sdfsdf", 'obchod' => "sdfsd", 'shop' => "sdfsd", 'class' => "sdfsd" ); $produkt[] = array( 'nazev' => "druhy", 'popis' => "sdfsdf", 'bezdph' => "sdfsdf", 'cena' => "sdfsdf", 'obrazek' => "sdfsd", 'odkaz' => "sdfsdf", 'obchod' => "sdfsdf", 'shop' => "sdfsdf", 'class' => "sdfsdf" ); a chci najít v produkt s názvem prvni.. jak toho docílím?? |
||
| Darker Profil |
#5 · Zasláno: 19. 9. 2012, 16:16:59
WeeHool:
Koukám, že jsi do té funkce moc nepronikl: print_R(search("nazev","prvni", $produkt));Parametr 2 určuje jakou (jaké - lze předat pole: array("prvni","druhy")) hodnotu má funkce hledat Parametr 3 je pole, ve kterém se bude hledat. Skript výše vrátí: Array ( [0] => Array ( [nazev] => prvni [popis] => takovyto [bezdph] => dfsdfsd [cena] => sdfsdf [obrazek] => sdfsd [odkaz] => sdfsdf [obchod] => sdfsd [shop] => sdfsd [class] => sdfsd ) ) |
||
| WeeHool Profil |
#6 · Zasláno: 19. 9. 2012, 16:18:37 · Upravil/a: WeeHool
ä děláš si srandu?? to sem udělal jako první..
no.. trošku jinak :D díky.. hej ale problém.. když zadám do názvu třeba prvni divadlo a dám hledat prvni, tak to nenajde.. jak to udělat, aby to našlo i část?? |
||
| Darker Profil |
#7 · Zasláno: 19. 9. 2012, 18:40:22
WeeHool:
„jak to udělat, aby to našlo i část??“ Musíš tu funkci prozkoumat a vylepšit. |
||
| peta Profil |
#8 · Zasláno: 21. 9. 2012, 13:39:59
Darker: ... o regularni vyraz do podminky :)
|
||
| Keeehi Profil |
Tu funkci bych trochu upravil:
function search($name, $values, &$data) {
$matches = array(); //Pole vyhovujicich polozek
if(!is_array($values)) //Moznych hodnot muze byt vicero
$values=array($values);
foreach($data as $item) { //Prochazeni dat
if ( in_array($item[$name], $values) ) {
$matches[]=$item; //Vyhovuje!
}
}
return $matches;
} |
||
|
Časová prodleva: 8 měsíců
|
|||
| Peli Profil * |
#10 · Zasláno: 27. 5. 2013, 17:51:11
Funkci jsem upravil takto, aby to vracelo i id nalezeného řádku...
function hledat_v_poli($name, $value,$data) {
$matches = array(); //Pole vyhovujicich polozek
if(!is_array($value)) //Moznych hodnot muze byt vicero
$value=array($value);
foreach($data as $key => $item) { //Prochazeni dat
foreach($value as $v) { //Prochazeni vyhovujicich hodnot
if($v==$item[$name]) { //Pokud hodnota polozky odpovida aktualni testovane hodnote
$matches[]=$item; //Vyhovuje!
$matches["cisloradku"]=$key; //přidám hodnotu, na kterém řádku to bylo nalezeno
break; //Konec zkoumani polozky
}
}
}
return $matches;
} |
||
|
Časová prodleva: 13 let
|
|||
0