jboy_87Medlem sedan aug. 20011 099 inlägg får inte ut det som är markerad nån som vet?!
<?
function getvader()
{
@$file = fopen("http://zodiaken.net/cgi-bin/dagens.pl?id=".$_GET['id']."", "r", "l");
if (!$file)
{
echo "Kunde inte upprätta förbindelsen med webbplatsen.\n Var god försök igen senare!";
exit;}
while (!feof($file))
{
$line = trim(fgets($file, 1024));
global $kopiera1;
if (eregi("<H4>(.*)</H4></FORM>",$line,$out))
$kopiera1 = "<font color='#868686'>$out[1]</font><br>";
global $kopiera2;
[b]
if (eregi("<TABLE WIDTH=80%><TR><TD>(.*)</TR></TD>",$line,$out))
$kopiera2 = $out[1];
}
[/b]
fclose($file);
return $kopiera1;
return $kopiera2;
}
getvader();
echo $kopiera1;
echo $kopiera2;?>
UrMeMedlem sedan apr. 2001762 inlägg Har provat och provat :) men jag går bet på detta.. du kan ju börja med att ändra </TR></TD> till </TD></TR>
Har det inget med att göra att texten mellan ligger på nästa rad eller nåt sådant?
Nexus86Medlem sedan okt. 20023 030 inlägg . i reguljära uttryck innehåller alla tecken utom ny rad så om cellen innehåller en ny rad så måste du använda
(.|\n)* istället.
jboy_87Medlem sedan aug. 20011 099 inlägg händer inget?
if (eregi("<TABLE WIDTH=80%><TR><TD>(.|\n)*</TD></TR>",$line,$out))
jboy_87Medlem sedan aug. 20011 099 inlägg någon som vet blir galen snart!
MatteMedlem sedan aug. 20002 975 inlägg Du kan troligtvis inte göra jämförelsen på en rad i taget, utan du får läsa in hela filen först:
$line = '';
while (!feof($file)) {
$line .= trim(fgets($file, 1024));
}
global $kopiera1;
if (eregi("<H4>(.*)</H4></FORM>",$line,$out)) {
$kopiera1 = "<font color='#868686'>$out[1]</font><br>";
}
if (preg_match("/<TABLE WIDTH=80%><TR><TD>(.*?)<\/TD><\/TR>/is",$line,$out)) {
$kopiera2 = $out[1];
}
jboy_87Medlem sedan aug. 20011 099 inlägg det funkade inte för mig när körde trim med $line innan!
men ska testa igen! tackar
MatteMedlem sedan aug. 20002 975 inlägg Det var inte trim jag syftade på utan att läsa in hela filen innan du börjar leta i den. Vad det gäller trim kan du lika gärna (eller hellre) göra så här:
while (!feof($file)) {
$line .= fgets($file, 1024);
}
jboy_87Medlem sedan aug. 20011 099 inlägg okdoki det funkar tack ska du ha!