pomoc s php

Programovacie jazyky, rady, poradňa...
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

pomoc s php

Príspevok od používateľa DeeJay3 »

cawte pomohl by mi niekto s tymto kodom?..cel by som ho iba kusa zmenit no vobec sa mi to nedari..

Kód: Vybrať všetko

                                   <tr>
		              <td style="padding-left:50px">
<?php 
$vyrazy = array( 
'1odkaz' => '1vyraz', 
'2odkaz' => '2vyraz', 
'3odkaz' => '3vyraz', 
'4odkaz' => '4vyraz' 
); 

$i = 0; 


if (!empty($_GET["q"])) { 
  foreach ($vyrazy as $vyraz_file => $vyraz_name) { 
    $search = stripos($vyraz_name, $_GET["q"]); 
    if ($search === false) continue; 
    else { 
      echo "<a href='./".$vyraz_file.".htm'>".$vyraz_name."</a><br>"; 
      $i++;   
    } 
  } 

  if ($i > 0) {echo "Počet možných hľadaných výrazov: $i <br><br>";} 
  else {echo "Nenašli sa žiadne možné výsledky.";} 
} 
else { 
  echo "Do poľa pre vyhľadávanie nebol zadaný žiadny výraz."; 
} 

?>

			      </td>
			</tr>
na stranke je to takto ako na obrazku...ale chcel by som by ten celkovy pocet najdenych sa mi zobrazil hore a centrovany do stredu...a jednolive odkazy tak ako su pod seba...
Prílohy
hladanie.jpg
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

Príspevok od používateľa audiotrack »

Kód: Vybrať všetko

<?php 
$vyrazy = array( 
'1odkaz' => '1vyraz', 
'2odkaz' => '2vyraz', 
'3odkdaz' => '3vyraz', 
'3odkaz' => '3vyraz', 
'4odkaz' => '4vyraz' 
); 

$pole = array();


if (!empty($_GET["q"])) { 
  foreach ($vyrazy as $vyraz_file => $vyraz_name) { 
    $search = stripos($vyraz_name, $_GET["q"]); 
    if ($search === false) continue; 
    else $pole[] = "<a href='./".$vyraz_file.".htm'>".$vyraz_name."</a><br>";  
  } 

  if (count($pole)>0) {  
  	echo "Počet možných hľadaných výrazov: ".count($pole)." <br><br>";
	foreach($pole as $key=>$value) echo $value;
	} 
  else {echo "Nenašli sa žiadne možné výsledky.";} 
} 
else { 
  echo "Do poľa pre vyhľadávanie nebol zadaný žiadny výraz."; 
} 

?>

<form action="" method="get">
	<input type="text" name="q">
</form>
a nabudúce ma prosímťa neotravuj na icq keď aj tak nespraviš čo ti poradím. Naštýluj si to už ako chceš, to hádam zvládneš
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

Príspevok od používateľa DeeJay3 »

no nevem preco ale blbne mi to...nemyslim tym ze si to zle upravil za to ti dakujem..ale ked mam v piatich vyrazok 5xslovo "rezistor" najde mi ho iba tri krat napr ako obrazok...precooo?

Kód: Vybrať všetko

$vyrazy = array( 
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0402' => 'Rezistor SMD0402 1% 100K', 
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0402' => 'Rezistor SMD0402 1% 1K ',  
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0603 1' => 'Rezistor SMD0603 1% 510K', 
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0603 1' => 'Rezistor SMD0603 1% 1K ',
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 2010' => 'Rezistor RC2010 JK-07 10K', 
); 
Prílohy
hladanie.jpg
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Skúsil si si vypísať to tvoje pole? Máš v nom len tri prvky (keďže tam máš viac rovnakých indexov).
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

Príspevok od používateľa DeeJay3 »

viac vyrazov (nazvov suciastok) musi mat rovnaky odkaz kedze sa nachadzaju v rovnakej skupine ....ale nazov nemaju celkom rovnaky iba z casti...

//autoeditácia príspevku ( 26 Feb 2009, 15:27 )
viete mi niekto poradit ako mi to zobrazi uplne vsetky?
chrono
VIP
VIP
Používateľov profilový obrázok
Príspevky: 7127
Registrovaný: 25 dec 2006, 15:17

Príspevok od používateľa chrono »

Dôležité je, že je rovnaký index (takže ty pri tej inicializácii prepisuješ rovnaký prvok).

Vyskúšaj napr.

Kód: Vybrať všetko

<?php

$vyrazy = array(
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0402' => 'Rezistor SMD0402 1% 100K',
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0402' => 'Rezistor SMD0402 1% 1K ',
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0603 1' => 'Rezistor SMD0603 1% 510K',
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0603 1' => 'Rezistor SMD0603 1% 1K ',
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 2010' => 'Rezistor RC2010 JK-07 10K',
);

echo "<pre>", print_r($vyrazy, true), "</pre>";
?>
a budeš vedieť, že to pole má iba tri prvky (takže ti ich vypisuje správne).
Ak chceš mať v jednej kategórii viac rôznych prvkov, urob to napr takto

Kód: Vybrať všetko

<?php

$vyrazy = array(
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0402' => array('Rezistor SMD0402 1% 100K', 'Rezistor SM
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0603 1' => array('Rezistor SMD0603 1% 510K', 'Rezistor
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 2010' => array('Rezistor RC2010 JK-07 10K'),
);

$pole = array();

if (!empty($_GET["q"])) {
  foreach ($vyrazy as $vyraz_file => $vyraz) {
    foreach ($vyraz as $vyraz_name) {
      $search = stripos($vyraz_name, $_GET["q"]);
      if ($search === false) continue;
      else $pole[] = "<a href='./".$vyraz_file.".htm'>".$vyraz_name."</a><br>";
    }
  }

  if (count($pole)>0) {
     echo "Počet možných hľadaných výrazov: ".count($pole)." <br><br>";
   foreach($pole as $key=>$value) echo $value;
   }
  else {echo "Nenašli sa žiadne možné výsledky.";}
}
else {
  echo "Do poľa pre vyhľadávanie nebol zadaný žiadny výraz.";
}

?>

<form action="" method="get">
   <input type="text" name="q">
</form>
(prípadne úplne inak, netuším, čo presne robíš)
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

Príspevok od používateľa DeeJay3 »

chrono napísal:Dôležité je, že je rovnaký index (takže ty pri tej inicializácii prepisuješ rovnaký prvok).
tak ako to spravit aby neprepisovalo ale vyhodilo vsetky...skusal som takto:

Kód: Vybrať všetko

$vyrazy = array( 
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0402' => 'Rezistor SMD0402 1% 100K','Rezistor SMD0402 1% 1K ',  
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 0603 1' => 'Rezistor SMD0603 1% 510K','Rezistor SMD0603 1% 1K ', 
'pasivne suciastky-rezistory a siete-rezistory smd-rezistory smd 2010' => 'Rezistor RC2010 JK-07 10K', 
);
teras najde vsetky (parada to som chcel) ale ak je viacej vyrazov a rovnaky index k nim tak ten index prida iba prvemu vyrazu a dalsiemu prida 0 (kedze kod pridava na koniec indexu htm tak index k druhemu najdenemu vyrazu bude 0.htm) dalsiemu s rovnakym indexom priradi 1 (1.htm)...atd vzdy funguje len prvy najdeny vyraz...dalsim pridava cisla....ako to spravit sakra..??
Napísať odpoveď