Autor Zpráva
HajekJirka
Profil
Zdravím,
potřeboval bych PHP script na "hlídání zpětných odkazů".
Vyměňuji si zpětné odkazy a potřebuji automaticky hlídat zda li je uživatel neodstranil bez mého vědomí a dělat to manuálně je skoro nemožné.

Nebo alespoň nějakou radu, odkaz (česky), ...

Mnohokrát děkuji!
koudi
Profil
Neřešilo se tu už něco takovýho? Asi takhle: uděláš si seznam stránek, kde máš mít své odkazy (xml, db, soubory,...), pak je cyklem projedeš a vždycky načteš tu stránku do proměnný (fopen, file_get_contents,...) a hledáš, jestli tam tvuj odkaz je (třeba přes reg. výrazy.)
souki
Profil
Můžeš mi napsat na ICQ? Měl bych řešení, ale zatím ho nechci publikovat :)
HajekJirka
Profil
koudi
Ano již jsem se jednou ptal.
Dozvěděl jsem se, že to jde, ale už ne jak.

Po nějaké době jsem se k tomu opět dostal a zůstal jsem vyset na tom samém místě, tak se ptám ještě jednou.
koudi
Profil
souki
Můžeš mi napsat na ICQ? Měl bych řešení, ale zatím ho nechci publikovat :)
Tak to bude asi skvost, co? :)

HajekJirka
zůstal jsem vyset na tom samém místě, tak se ptám ještě jednou.
Možná kdybys řek, co ti nejde....
HajekJirka
Profil
Tak to vypadá, že už to mám:
Můžete mi ošetřit případné chyby nebo poradit nějaké "vychytávky"?

Děkuji.

@$result = mysql_query("SELECT * FROM odkazy");
while ($row = mysql_fetch_array($result)) {
@$id = $row[0]; // id
@$nazev_stranek = $row[1]; // nazev_stranek
@$url_stranek = $row[2]; // url_stranek
@$tvar_odkazu = $row[3]; // tvar_odkazu

// Načte stránku $url_stranek (otevře pro čtení)
@$fp = fopen ($url_stranek, "r");
@$data="";

while(!feof($fp)){
@$data.=fgets($fp,4096);
}

echo "<tr>";

// Vyhledá ve stránce $url_stranek slovo $tvar_odkazu
if (strpos(@$data, $tvar_odkazu) === false) {
echo "<th>$id</th>";
echo "<td><h4>$nazev_stranek</h4></td>";
echo "<td class='error'><h3>Odkaz nenalezen</h3></td>";
}
else {
echo "<th>$id</th>";
echo "<td><h4>$nazev_stranek</h4></td>";
echo "<td><h3>OK odkaz je v pořádku</h3></td>";
}

echo "</tr>";

}
nightfish
Profil
vychytávky...
file_get_contents() místo fopen, fgets a chybějícího fclose

co se mi nezdá:
- chybí <table> a </table>
- na můj vkus příliš zavináčů - proč?
HajekJirka
Profil
nightfish

file_get_contents() místo fopen, fgets a chybějícího fclose -> opravím
chybí <table> a </table> -> nechybí, ale mám ho ve scriptu jako HTML, proto tady není (<table><?php ... ?></table>)
na můj vkus příliš zavináčů - proč? -> Zavináče dávam všude, aby se mi nezobrazovali případné chyby. Vadí něčemu zavináče?
nightfish
Profil
Zavináče dávam všude, aby se mi nezobrazovali případné chyby. Vadí něčemu zavináče?
ideální je zavináče nedávat nikam, aby člověk viděl chyby a mohl je opravit
s tím, že na produkčním serveru bude Display_errors vypnuté, aby z chybových hlášek nemohli profitovat potenciální útočníci
HajekJirka
Profil
nightfish
No ale já nemám možnost si nastavit server podle svých požadavků (zatím) a tak tam dávám zavináče.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0