Avatar billede spikebox Nybegynder
28. januar 2009 - 15:46 Der er 6 kommentarer og
1 løsning

manglen id

Hej hvordan får jeg den til at printe ID ud på mysql tablen der hvor den henter hostname det virker fint med udprint af meta description

Kode:

<?php
// Connect to the database
include 'dbconfig1.php';
include 'dbopen1.php';

function page_title($url) {   
$page = @file_get_contents($url);   
if (!$page) return null;   
$matches = array();   
if (preg_match('|<meta[^>]*description[^>]*content=\"([^>]+)\"[^>]*>|Ui', $page, $matches)) {       


if(count($matches) > 0)
$description= $matches[1];
else
$description='';

print '<table style="border:1px solid #033333;margin:10px;width:600px"><tr><td>Meta Description:</td><td>'.$id.','.$description.'</td></tr></table>';
       
}

}


$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM hostlist"),0);

for($i = 1; $i < $antal; $i++){
    $query  = "SELECT id,hostname,port,text2Index,lastvisit,indexed_pages,time_sec,bytes_downloaded,error_pages,priority,httpstatus,reklame FROM hostlist WHERE id = $i LIMIT 1" ;
    $result = mysql_query($query);

    while (list($id,$hostname,$port,$text2Index,$lastvisit,$indexed_pages,$time_sec,$bytes_downloaded,$error_pages,$priority,$httpstatus,$reklame)= mysql_fetch_row($result)){

        if (page_title("http://$hostname")){
   
        }
   
    }

 
    //Pause på 1 sekund.
    if(($i % 500) == 500){
        sleep(1);

  }
}

mysql_close($conn);
?>
Avatar billede jakobdo Ekspert
28. januar 2009 - 16:06 #1
F.eks. sådan her:

Ret din funktion til:
function page_title($url,h_id) {

og ret:
<td>'.$id.','.$description.'</td></tr></table>';
til:
<td>'.$h_id.','.$description.'</td></tr></table>';

Samt ret:
if (page_title("http://$hostname")){
til:
if (page_title("http://$hostname",$id)){
Avatar billede spikebox Nybegynder
28. januar 2009 - 16:21 #2
Hej jakobdo der mangle lige et $ men elser fint hvis jeg skal lave et mysql_query("UPDATE hostlist og sætte meta description ind i den tabel der heder text2Index hvor idet passer hvor dan gør jeg så ?? :) er jo ret ny i det her php
Avatar billede jakobdo Ekspert
28. januar 2009 - 18:19 #3
Hvor vil du have din mysql update henne ?
Avatar billede spikebox Nybegynder
28. januar 2009 - 18:30 #4
Joo havde tænk mig sådan noget her i den reting men det virker ikke :)


Kode:

<?php
// Connect to the database
include 'dbconfig1.php';
include 'dbopen1.php';

function page_title($url,$h_id) {   
$page = @file_get_contents($url);   
if (!$page) return null;   
$matches = array();   
if (preg_match('|<meta[^>]*description[^>]*content=\"([^>]+)\"[^>]*>|Ui', $page, $matches)) {       


if(count($matches) > 0)
$description= $matches[1];
else
$description='';

print '<table style="border:1px solid #033333;margin:10px;width:600px"><tr><td>Meta Description:</td><td>LinkID='.$h_id.'<br>'.$description.'</td></tr></table>';
       
mysql_query("UPDATE hostlist SET text2Index = '$description' WHERE id = '$h_id' LIMIT 1"); 

}

}


$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM hostlist"),0);

for($i = 1; $i < $antal; $i++){
    $query  = "SELECT id,hostname,port,text2Index,lastvisit,indexed_pages,time_sec,bytes_downloaded,error_pages,priority,httpstatus,reklame FROM hostlist WHERE id = $i LIMIT 1" ;
    $result = mysql_query($query);

    while (list($id,$hostname,$port,$text2Index,$lastvisit,$indexed_pages,$time_sec,$bytes_downloaded,$error_pages,$priority,$httpstatus,$reklame)= mysql_fetch_row($result)){

        if (page_title("http://$hostname",$id)){
        }
    }

 
    //Pause på 1 sekund.
    if(($i % 500) == 500){
        sleep(1);

  }
}

mysql_close($conn);
?>
Avatar billede spikebox Nybegynder
28. januar 2009 - 18:50 #5
Hej jakobdo har fåget det til at virke så gi mig lige et svar så du kan få nogle point :)
Avatar billede jakobdo Ekspert
28. januar 2009 - 20:18 #6
Svar!
Avatar billede jakobdo Ekspert
28. januar 2009 - 20:35 #7
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester