2011-04-18 46 views
0

我在PHP中有一些基本的知識,而且我真的明白了actualy下面的代碼的作用,但是我需要做一些有點複雜的事情,我希望你能幫助我。有條件操作的幫助

我是銷售網站的管理員,我們遇到了程序員的一些麻煩,他被我的老闆解僱了,所以在尋找新的程序員時,我需要爲此提出解決方案。

此代碼執行以下操作:如果$買家爲0,則顯示消息「成爲第一個買它!如果它等於1,則顯示「1買方」;如果它等於2(如此),則它顯示「2個買家」;

<p class="Lato"><?php echo $buyers==0 ? "Be the first to buy it!" : $buyers ; ?><?php echo intval($buyers)>0 ? intval($buyers)>1 ? " buyers" : " buyer" :"" ?></p> 

但這只是對於已經通過信用卡公司批准的採購,因此,如果30人買了它,但只有2實際上獲得批准,它會顯示「2個買主」。

所以,我需要它顯示「2買家+ 28待定」,所以人們可以看到,產品實際上是銷售。

在控制付款的數據庫上,我們有「買家」和「待處理」的表格,所以很容易實現。我只是無法弄清楚,PHP不是我的領域,我只是在這裏和那裏找出一些東西,因爲我實際上是一名程序員,但是換了另一種語言。

就是這樣,謝謝你們的時間。

回答

1

編輯:加入其他信息後,說有一個$pending變量,代碼會是這樣的(注意,這是未經測試):

<p class="Lato"> 
<?php 
    $buyersOutput = intval($buyers)>0 ? intval($buyers)>1 ? " buyers" : " buyer" :"" ; 

    $pendingOutput = intval($pending)>0 ? $pending . " pending" : ""; 

    if ($buyers == 0 && $pending == 0) { 
    echo "Be the first to buy it!"; 
    } else if (intval($buyers) > 0 && intval($pending) > 0) { 
    echo $buyersOutput ." + " . $pendingOutput; 
    } else { //if just one contains text 
    echo $buyersOutput . $pendingOutput; 
    } 
?> 
</p> 
+0

這兩個變量都設置在文件的開頭,並通過連接到MySQL數據庫來獲取值。他們是這樣設置的: $ buyers = $ sales ['buyers']; $ pending = $ sales ['pending']; – 2011-04-18 16:09:01

+0

使用正確的var名稱更新的代碼 – 2011-04-18 16:14:45

+0

+1,這是我接受的答案。 – Shoe 2011-04-18 16:19:22

1

你最好只僱用一些自由職業者或自己學習。因爲基本上你只是要求一些基本的SQL查找和回顯。

儘管如此,根據您提供的信息,我們無法幫助您。我希望它像「SELECT COUNT(*)FROM pending」一樣簡單,但它可能不是。

+0

同時你告訴我,你不能用一個簡單的問題幫助,您建議我自己學習。如果你有多年(我想)的PHP知識不知道該怎麼做,我該怎麼做? – 2011-04-18 15:27:10

+0

就像我說的,你沒有提供足夠的信息給我們。 – 2011-04-18 15:30:38

+0

那麼,我需要提供哪些信息才能提供我需要的幫助? – 2011-04-18 15:38:19

1

你應該能夠回收該查詢形成買方以確定待定。

你的代碼看起來應該是這樣的(猜測)

$sql = mysql_query("SELECT COUNT(*) FROM buyers WHERE product_id={$someid}"); 
$buyers = mysql_fetch_object($sql); 

保持以m IND,這是基本的猜測你用什麼,但你應該能夠找到這段代碼,用不同的變量名稱修改($ sql2等),並提取掛起計數到$掛起而不是$買家。

例子:

$sql2 = mysql_query("SELECT COUNT(*) FROM pending WHERE product_id={$someid}"); 
$pending = mysql_fetch_object($sql); 

然後你就可以重新使用你上面貼的代碼,並

<p class="Lato"><?php echo $peding==0 ? "No Pending" : $pending . " Pending"; ?> 
+0

+1,再加上記住你的sql語句中的所有內容。如果你無法做到這一點,請讓某人爲你做到這一點:這很重要! – Shoe 2011-04-18 16:18:49