2013-12-19 35 views
0

我在做什麼:多個更新查詢單場如果單一形式的報表提交

我所提供的進度條來增加或減少在用戶填寫/被清空場的形式向用戶+/- 10%,當用戶提交表單時會更新到數據庫。此進度條向用戶指出用戶已完成多少百分比的配置文件。

什麼問題,我面對:

我已經提供了多個更新查詢它運行時,只要它滿足if語句。所有的if語句和查詢都在工作,因爲我已經檢查過了。但數據庫中的進度欄​​字段的值只更新,一次爲,或者在用戶填寫字段時增加,或者在用戶清空字段時增加。 如果在這種情況下,各個領域的用戶更新也被增加或減少10%減少

這裏是我的代碼:

<? 
include('includes/include.inc.php'); 
protect_seeker_page(); 

$loginLine=mysql_fetch_array(mysql_query 
     ("select * from tb_user_login where user_login_id='$_SESSION[SEEKER_ID]'")); 
$userLine=mysql_fetch_array(mysql_query 
     ("select * from tb_user where user_login_id='$_SESSION[SEEKER_ID]'")); 
$metadataLine=mysql_fetch_array(mysql_query 
     ("select * from tb_user_metadata where user_login_id='$_SESSION[SEEKER_ID]'")); 


    $company=$userLine['user_progress']+10; 
    $company2=$userLine['user_progress']-10; 

    $skill=$userLine['user_progress']+10; 
    $skill2=$userLine['user_progress']-10; 

    $ind=$userLine['user_progress']+10; 
    $ind2=$userLine['user_progress']-10; 


    $resume=$userLine['user_progress']+10; 
    $resume2=$userLine['user_progress']-10; 

    if($_POST['Submit']=='Update'){ 

if($userLine['user_company_name']=="" and $_POST['user_company_name']!=""){ 
mysql_query 
    ("update tb_user set user_progress='".$company."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); } 

    if($userLine['user_skills_id']=="" and $_POST['user_skills']!="") 
     { 
mysql_query("update tb_user set user_progress='".$skill."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); } 

    if($userLine['user_resume_title']=="" and $_POST['user_resume_title']!=""){ 
mysql_query("update tb_user set user_progress='".$resume."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); } 
if($userLine['user_industry_id']==0 and $_POST['industry_name']!=""){ 
echo mysql_query("update tb_user set user_progress='".$ind."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); } 




if($_POST['user_company_name']=="" and $userLine['user_company_name']!=""){ 
mysql_query("update tb_user set user_progress='".$company2."' 
    where user_login_id='$_SESSION[SEEKER_ID]'"); } 

if($_POST['user_skills']=="" and $userLine['user_skills_id']!=""){ 
    mysql_query("update tb_user set user_progress='".$skill2."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); } 

if($_POST['user_resume_title']=="" and $userLine['user_resume_title']!=""){ 
mysql_query("update tb_user set user_progress='".$resume2."' 
      where user_login_id='$_SESSION[SEEKER_ID]'"); } 
if($_POST['industry_name']=="" and $userLine['user_industry_id']!=0){ 
mysql_query("update tb_user set user_progress='".$ind2."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); } 



     } 


     ?> 
+0

你能詳細說明你的問題嗎?因爲它不清除所有東西 –

+0

我認爲你可以在這裏使用案例 – Prafulla

+0

@BrokenHeartღ在這段代碼中,我所有的更新查詢都在工作,但是它仍然是 ,不僅僅是在單次提交中將值改爲+/- 10,即使值變爲+/- 20或+/- 30或+/- 40 – analyticalpicasso

回答

1

使用下面的代碼:

$progress = $userLine['user_progress']; 

    if($_POST['Submit']=='Update'){ 

    if($userLine['user_company_name']=="" and $_POST['user_company_name']!=""){ 
    $progress +=10; 
    } 

    if($userLine['user_skills_id']=="" and $_POST['user_skills']!=""){ 
    $progress +=10; 
    } 

    if($userLine['user_resume_title']=="" and $_POST['user_resume_title']!=""){ 
     $progress +=10; 
    } 
    if($userLine['user_industry_id']==0 and $_POST['industry_name']!=""){ 
     $progress +=10; 
    } 

    if($_POST['user_company_name']=="" and $userLine['user_company_name']!=""){ 
    $progress -=10; 
    } 

    if($_POST['user_skills']=="" and $userLine['user_skills_id']!=""){ 
    $progress -=10; 
    } 

    if($_POST['user_resume_title']=="" and $userLine['user_resume_title']!=""){ 
     $progress -=10; 
    } 
    if($_POST['industry_name']=="" and $userLine['user_industry_id']!=0){ 
    $progress -=10; 
    } 
    mysql_query("update tb_user set user_progress='".$progress."' 
     where user_login_id='$_SESSION[SEEKER_ID]'"); 
    } 

在你代碼你總是添加+/- 10的當前值在表中存在,所以它總是添加+/- 10而不是+/- 20和/ -30,因此不會。所以你需要按照我的建議使用它。

注意:不要使用mysql_ *,因爲它已被棄用。
               始終使用mysqli_ *或PDO。

+1

心臟感謝噸:) :) 它的工作! :D – analyticalpicasso

+1

@Sonam它真的很樂意幫助你。我叫高拉夫。將來你可以通過我的博客與我聯繫。 http://sugarcrmguide.blogspot.com/檢查我的博客。 –

+0

這個項目是由其他人啓動的,這就是爲什麼我使用'mysql_ *',否則我總是使用'mysqli_ *' 謝謝你的建議! – analyticalpicasso