Autor Zpráva
Ball
Profil *
Dobrý den, chci se vás zeptat jestli a jak z těhlech kódů by šlo udělat něco co z takových to slov: klíč, míč, puk
by udělalo klíčové jako má vyhledávač a v textu odstranit a vložit z novu př: Dobrý den, slovo má míč = Dobrý den, slovo má <b>míč</b>

Kódy zde:
<?php
$pantry = "tomatoes,oranges,bananas,potatoes,bread,apples";
?>

<?php
$pantry = "tomatoes,oranges,bananas,potatoes,bread,apples";
$pantry_food = explode(",",$pantry);
?>

<?php
$count_total = count($pantry_food);
for ($counter=0; $counter<$count_total; $counter++){
$line = each ($pantry_food);
echo "$line[key] $line[value] <br />";
}
?>

<?php
$new_pantry = implode(" ",$pantry_food);
?>

<?php
echo "$new_pantry";
?>
Tori
Profil
str_replace (bez těch převodů na pole a zpět)
Ball
Profil *
Já už jsem s těch anglických popisů na nervy není ňejaký český nebo funkční kód na něake webovce?
Tori
Profil
Omlouvám se, asi bude přeci jen potřeba to pole:
$text = 'tady chci zvýraznit apples';
$hledanaSlova = "tomatoes,oranges,bananas,potatoes,bread,apples";
$hledanaSlova = explode(',', $hledanaSlova);
foreach ($hledanaSlova as $slovo)  {
  str_replace($slovo, "<b>$slovo</b>", $text);
}
Ball
Profil *
Dekuji za ten kod, ale jeste mam nejaky problem s adaptaciou nemuzete mne to prekontrolovat ,,, prosím .. radek 25 -27
<?php
error_reporting(0);
echo "<tr><td class=\"".nazev_okno."\">";
$indext = 1;
foreach ($xml->channel as $channel){
if($indext > 1){ break; }
$indext++;    
$linkt = $channel->link;
$titlet = $channel->title;  
echo "<a href=\"".$linkt."\" target=\""._blank."\">".$titlet."</a>";  
} 
echo "</td></tr><tr><td class=\"".obsah_okno."\">"; 
$index = 1;
foreach ($xml->channel->item as $item){
if (strtotime($item->pubDate) < strtotime("-24 hours"))
        break;
$index++;
$date = $item->pubDate;
$link = $item->link;
$link = $item->guid;
$title = $item->title;
$desc = $item->description;
$keywords = $item->keywords;

$keywords = explode(',', $keywords);
foreach ($keywords as $key)  {
  str_replace($key, "<b>$key</b>", $desc);


$date = strtotime($date);
$date = StrFTime("%d. %m. %Y", $date);
$date = str_replace(". 0", ". ", $date);
$num = strlen($date);
if(substr($date, 0, 1) == "0") $date = substr($date, 1, $num);
echo $date." - <a href=\"".$link."\" target=\""._blank."\">".$title."</a>";
echo "<br />".strip_tags ($desc)."<br /><br />";
}}
if($index == 1) echo "Nejsou nové zprávy";
echo "</td></tr>";
?> 
Tori
Profil
Foreach není ukončené za ř.27. Možná jste mohl i pokračovat v původním vlákně.

edit: Pokud je zvýrazňovaných slov hodně, bylo by asi vhodnější to udělat takto: (text se bude zpracovávat jen jednou)
$keywords = $item->keywords;
$replaceWith = array();
foreach ($keywords as $key)
  $replaceWith[$key] = "<b>$key</b>";

$desc = strtr($desc, $replaceWith);
Ball
Profil *
Jo, to asi ano ..., ale ted jsem ukoncil na 28 a kunceni na 37 jedno odstranil text se mi uz nezobrazuje dvakrat, ale ani se neztuční
Ball
Profil *
Možná jsem to chybně vložil, ale rovněž nefunguje. a myslím že zpracován jednou že u tohodle ai nebude fungovat když pokaždýho člověka se spouští všechny načítání od znova.
<?php
error_reporting(0);
echo "<tr><td class=\"".nazev_okno."\">";
$indext = 1;
foreach ($xml->channel as $channel){
if($indext > 1){ break; }
$indext++;    
$linkt = $channel->link;
$titlet = $channel->title;  
echo "<a href=\"".$linkt."\" target=\""._blank."\">".$titlet."</a>";  
} 
echo "</td></tr><tr><td class=\"".obsah_okno."\">"; 
$index = 1;
foreach ($xml->channel->item as $item){
if (strtotime($item->pubDate) < strtotime("-24 hours"))
        break;
$index++;
$date = $item->pubDate;
$link = $item->link;
$link = $item->guid;
$title = $item->title;
$desc = $item->description;

$keywords = $item->keywords;
$replaceWith = array();
foreach ($keywords as $key)
  $replaceWith[$key] = "<b>$key</b>";

$desc = strtr($desc, $replaceWith);

$date = strtotime($date);
$date = StrFTime("%d. %m. %Y", $date);
$date = str_replace(". 0", ". ", $date);
$num = strlen($date);
if(substr($date, 0, 1) == "0") $date = substr($date, 1, $num);
echo $date." - <a href=\"".$link."\" target=\""._blank."\">".$title."</a>";
echo "<br />".strip_tags ($desc)."<br /><br />";
}}
if($index == 1) echo "Nejsou nové zprávy";
echo "</td></tr>";
?> 
Tori
Profil
Oprava: ř.24 má být
$keywords = explode(',', $item->keywords);
- pokud jsou klíč.slova oddělená něčím jiným než čárkou, tak to dejte jako 1.parametr do funkce explode. Jinak na ř.38 má být jen jedna závorka.
Dnes už raději radit nebudu, dělám příliš chyb.
Ball
Profil *
Opětovně nefunguje --- , ale mně to nevadí aspoň že mi někdo radí,, Předem děkuji za další rady (len pokud chcete)
P.S. už mám dojem že někteří jedinci mají ke mně averzi

<?php
error_reporting(0);
echo "<tr><td class=\"".nazev_okno."\">";
$indext = 1;
foreach ($xml->channel as $channel){
if($indext > 1){ break; }
$indext++;    
$linkt = $channel->link;
$titlet = $channel->title;  
echo "<a href=\"".$linkt."\" target=\""._blank."\">".$titlet."</a>";  
} 
echo "</td></tr><tr><td class=\"".obsah_okno."\">"; 
$index = 1;
foreach ($xml->channel->item as $item){
if (strtotime($item->pubDate) < strtotime("-24 hours"))
        break;
$index++;
$date = $item->pubDate;
$link = $item->link;
$link = $item->guid;
$title = $item->title;
$desc = $item->description;
$keywords = explode(',', $item->keywords);
$replaceWith = array();
foreach ($keywords as $key)
  $replaceWith[$key] = "<b>$key</b>";
$desc = strtr($desc, $replaceWith);
$date = strtotime($date);
$date = StrFTime("%d. %m. %Y", $date);
$date = str_replace(". 0", ". ", $date);
$num = strlen($date);
if(substr($date, 0, 1) == "0") $date = substr($date, 1, $num);
echo $date." - <a href=\"".$link."\" target=\""._blank."\">".$title."</a>";
echo "<br />".strip_tags ($desc)."<br /><br />";
}
if($index == 1) echo "Nejsou nové zprávy";
echo "</td></tr>";
?> 
Ball
Profil *
Napadlo mně jestli ten kód teď vůbec když dám echo na keywords něco vypíše a ne jen napíše array
Tori
Profil
Ball:
"array"? co vlastně je v tom $item->keywords?
var_dump($item->keywords);
Ball
Profil *
    <item>
      <title>Thunderbird definitivně na druhé koleji. Mozilla se ho tiše zbavuje</title>
      <link>http://www.zive.cz/bleskovky/thunderbird-definitivne-na-druhe-koleji-mozilla-se-ho-tise-zbavuje/sc-4-a-156506/default.aspx</link>
      <guid>http://www.zive.cz/default.aspx?article=156506</guid>
      <description>Před čtyřmi lety chtěla Mozilla po velkém úspěchu Firefoxu zužitkovat i potenciál pošťáka Thunderbird. Byla to tehdy jedna z mála volně dostupných alternativ Outlooku a to v podstatě platí dodnes. Tedy platí to druhé, ale z toho prvního – ze snahy ve velkém prodat i Thunderbird – nezůstal kámen na ...</description>
      <keywords>Mozilla, Thunderbird</keywords>
      <pubDate>Tue, 9 Apr 2011 12:37:00 GMT</pubDate>
    </item>
Ball
Profil *
Vložil jsem var_dump($item->keywords); na řádek 24 a vypsalo mi to to to
object(SimpleXMLElement)#13 (1) { [0]=> string(20) "Mozilla, Thunderbird" }

Ale asi to není správně, vložený
Tori
Profil
Aha, tak by mělo pomoct přetypování (ř.23):
$keywords = explode(',', (string) $item->keywords);
// anebo tohle, teď nevím:
$keywords = explode(',', (string) $item->keywords[0]);
Ball
Profil *
vpřípadě druhýho příkazu mně dump vyhodí object(SimpleXMLElement)#16 (1) { [0]=> string(30) "DropTunes, přehrávač, cloud" }
vpřípadě prvního příkazu mně dump vyhodí object(SimpleXMLElement)#14 (1) { [0]=> string(30) "DropTunes, přehrávač, cloud" }

ale nevím jestli to má význam a proto to zjednoduším tučný to opět není

možná je i chyba ve výpisovým kódu
<?php
$xml=simplexml_load_file($root. "http://lops.cz/key/rss.xml");
include "rss_nastroje/rss_agregator.php";
?> 


Děkuji za všechny rady do posud a na dale,, dekuji.
Ball
Profil *
Nemnelo by to foreach ohraniceno {} jako u tohoto prikladu?

foreach ($a as $v) {
    echo "Current value of \$a: $v.\n";
}
Ball
Profil *
Chyba odhalena na řádku 34:
správné znění :
echo "<br />".strip_tags ($desc, '<b>')."<br /><br />";

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

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

0