1

タイトルは私が達成する必要があることを示していますが、ページが構築されると得られるのは、各行に同じ結果を持つ 3 つの列です。各行は異なりますが、各行の各列には、列 1、2、および 3 の異なるものではなく、同じものが繰り返されます。

この作業を行うには、以下のコードに何かが欠けています。どんな助けでも大歓迎です。

ありがとうございました。

mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");

$results = mysql_query("SELECT title,link FROM syndicate ORDER BY popularity DESC LIMIT 75");
while ($row = mysql_fetch_array($results)){

$title = $row['title'];
$link = $row['link'];

if ($divtest = 1){
//insert in div col1;
echo '<div class="col1">';
///<!-- Column 1 start -->
echo '<a href="' . $link . '" target="_blank">' . $title . '</a><br><br>'; /// add all links here
///<!-- Column 1 end -->
echo '</div>';

$divtest = 2;
}

if ($divtest = 2){
//insert in div col2;
echo '<div class="col2">';
///<!-- Column 2 start -->
echo '<a href="' . $link . '" target="_blank">' . $title . '</a><br><br>'; /// add all links here
///<!-- Column 2 end -->
echo '</div>';

$divtest = 3;
}

if ($divtest = 3){
//else {
//insert in div col3;
echo '<div class="col3">';
///<!-- Column 3 start -->
echo '<a href="' . $link . '" target="_blank">' . $title . '</a><br><br>'; /// add all links here
///<!-- Column 3 end -->
echo '</div>';

$divtest = 1;
}

}
4

2 に答える 2

1

おそらく演算子を意味していました=が、ステートメントで代入演算子を間違って使用しています。if==

次の行を変更します。

if ($divtest = 1){
..
if ($divtest = 2){
..
if ($divtest = 3){

正しいもののために:

if ($divtest == 1){
..
if ($divtest == 2){
..
if ($divtest == 3){
于 2012-09-24T18:06:04.323 に答える
0

なぜなら

$divtest = 2; 
$divtest = 3; 
$divtest = 1;

while の 1 サイクルで実行される場合は、各 if ステートメントの最後に 3 つごとに実行されます。

$divtest 値を while から設定し、if 条件をこれらで変更する必要があると思います

if ($divtest == 1){}

if ($divtest == 2){}

if ($divtest == 3){}
于 2012-09-25T17:59:32.533 に答える