Autor Zpráva
Webberix
Profil *
Zdravím,
mám kód např.:
<html>
<head>
<title>xxx</title>
</head>
<body>
<div>xxx</div>
<span class="neco">xxx</span>
<ul>
<li>xxx</li>
<li>xxx</li>
</ul>
</body>
</html>
A potřeboval bych do různých proměných dostat všechna "xxx". Jak to mohu udělat, a mohli byste proím napsat malý příklad?

-nejlepší by byla nějaká funkce, která najde text mezi dvěma řetězci, nebo tak něco.

(mám totiž asi 200 stránek se stejnou strukturou a chci jejich obsah převést do databáze).

Předem děkuji za snahu
kubiczech
Profil
tohle jsou zaklady PHP... cetl jsi o tom nejaky tutorial ci neco?

prirazeni do promenne je $promenna = "string";

volani promenne je echo $promenna;

a fce pro nalezeni mezi dvema retezci se jmenuje explode()

jinak http://cz.php.net ;-)
TSD
Profil
Být to v zakázkách, tak to vezmu.

Počti si něco o databázích.

Jedna věc je udělat systém, který ti ten tvůj aktuální nahradí.
Druhá věc bude převod toho stávajícího do databáze, to bude trochu složitější.
Za třetí budeš asi řešit vkládání nových stránek.
Webberix
Profil *
S databází a proměnnými samozřejmě umím, jenom neznám funkci explode().

Můžeš mi teda prosím napsat jak bych měl konkrétně napsat dotaz, aby mi ukázal nějaké to "xxx"?
Díky
Webberix
Profil *
Btw, do funkce explode() můžu přece zadat jen jeden řetězec, a ne dva. Takže to nepůjde.

Je jiné řešení?
kubiczech
Profil
Webberix
do funkce explode() muzes dat kolik retezcu chces, jen je musis oddelit jednim jedinym separatorem!!!

jinak myslim, ze funkce na rozpoznavani podle retezcu neni dobra... proste bych si vse udelal do jedne promenne, ikdyz i tak je to krkolomne reseni a oddelil je nejakym jinym znakem, nez se bude vyskytovat v textu...
kajaman
Profil
doufám, že jsem Tvůj záměr pochopil dobře: :)

$handle = opendir(adresar_kde_mas_200_html_souboru);
while(false !==($file = readdir()){
  $obsah = file_get_contents()
  $hledam=array("7-<title>"=>"</title>", "18-<div class='neco'>"=>"</div>",...);  
  $zarazka = 0;
  foreach($hledam as $key=>$value){
     $pole = explode("-",$key);
     $offset = $pole[0];
     $klic = $pole[1];  
     $zacatek = stripos($obsah, $klic, $zarazka) + $offset;
     $konec = stripos($obsah, $value, $zarazka);
     $zarazka = $konec+5;
     $coToHledam[] = substr($obsah, $zacatek, $konec);
  }
//tady to uloz do DB 
}

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: