this siteからPHPでデータを取得して表示したいと考えています。PHPでテーブルにデータ(ウェブサイトから取得)を表示
PHPのpregmatch
関数を使用して、3つの異なるテーブルで目的の値(記事名、価格、およびその他の値)を取得しました。まだ残っているのは、2次元の表にそれらを表示することです。
テーブルの最初の行に商品名と価格が必要です。行の残りの部分には、その値の後ろに続くタイトルが含まれていなければなりません。
これは私の現在のPHPコードです:
<?php
$debut="https://www.agriconomie.com";
$txt = file_get_contents('https://www.agriconomie.com/pieces-agricoles/tracteur/attelage---relevage/pc2902'); /*ici c'est pour Lire la page html*/
$results = array();
// $test = preg_match_all('#<a href="(.*?)">#', $txt, $names_array);
$test = preg_match_all('#<a href="(.+)" class="(.+)" title="(.+)"#', $txt, $names_array);
/*recupéré les liens du site en particuliers le text qui se situe entre griffe "" du href*/
for($i = 0; $i < count($names_array[1]); $i++)
{
$j=$i;
$debut="https://www.agriconomie.com".$names_array[1][$i];
$adresse =$debut;
/* echo $adresse ; ?> <br /> <?php */
$page = file_get_contents ($adresse);
/* preg_match_all ('#<h3 class="product-name">(.+)</h3>#', $page, $names_array5); */
preg_match_all ('#(<dd>(.+)</dd>)#', $page, $names_array2);
preg_match_all ('#<span><i class="icon-chevron-right"></i>(.*?)</span>#', $page, $names_array3);
preg_match_all ('#<p class="price" itemprop="price" content="(.*?)">#', $page, $names_array4);
echo "<center>";
echo "<table class='table table-bordered table-striped table-condensed'>";
/*
for($j = 0; $j < count($names_array5[1]); $j++)
{
$NOM = $names_array5[1][$j];
echo 'Nom ='.$NOM ;
}
*/
for($j = 0; $j < count($names_array4[1]); $j++)
{
$price = $names_array4[1][$j];
echo 'Prix ='.$price.'$' ;
}
for($i = 0; $i < count($names_array3[1]); $i++)
{
for($j= 0; $j < count($names_array2[1]); $j++){
$descriptif = $names_array2[1][$i];
}
$intitule = $names_array3[1][$i];
echo "<tr><td>".$intitule." </td> <td> ".$descriptif." </td> </tr> ";
}
}
echo "</table>";
echo "</center>";
?>
質問を投稿する前にコードの書式を設定してください。 –
コードをフォーマットするにはどうすればよいですか?ここに私のソースコードです!私を助けてください 。 –
あなたのコードは@Qirelによってフォーマットおよび編集されました –