php
  • mysql
  • 2012-04-29 54 views 0 likes 
    0

    當一個團隊名稱不在數據庫中時,如果不想忽略它,我想輸入它。但是我沒有看到一個錯誤,我只看到了回聲,但沒有輸入到數據庫中。 數據庫是MySQL和表名是2012FallTeamstats我有一個自動增量是一個雙贏一輸一TEAM_ID柱和百分比場。 (共4個表)向數據庫添加一個新值,沒有錯誤但沒有輸入

    mysql_query("SELECT teamname FROM 2012FallTeamstats WHERE teamname = '$teamH'"); 
    if (mysql_affected_rows() == 0) { 
        mysql_query("INSERT INTO 2012FallTeamstats (teamname) VALUES ('$teamH')"); 
        echo "New: <strong>".stripslashes($teamH)."</strong> (home team) inserted into the database.<br>"; 
    } 
    
    +0

    添加錯誤上失敗,'或死亡(mysql_error())' – 2012-04-29 03:14:56

    回答

    2

    嘗試使用mysql_num_rows()代替mysql_affected_rows。

    這樣的代碼。

    $result_team = mysql_query(.........); (your code) 
    

    然後

    if(mysql_num_rows($result_team) == 0) 
    { 
    //insert command 
    } 
    
    +0

    是這是它,就像勞倫斯Cherone只能回答我沒有單一抽動列名。我遇到的另一個錯誤是我認爲我將第一列設置爲自動遞增,但我沒有。現在所有更新都正確!謝謝! – user1066771 2012-04-29 05:43:31

    0

    如果您剪切並貼在命令行打印出來,並進入到MySQL的SQL發生什麼呢?我懷疑你可能需要從表中添加額外的字段到SQL,但如果你運行現有的SQL,你會看到,如果有與該語句的問題。

    0

    你不是從查詢除其他外得到的結果:

    注意:$result=

    mysql_num_rows() & quoting column & or die(mysql_error());

    $result = mysql_query("SELECT `teamname` FROM `2012FallTeamstats` WHERE teamname = '$teamH'"); 
    if (mysql_num_rows($result) == 0) { 
        mysql_query("INSERT INTO `2012FallTeamstats` (teamname) VALUES ('$teamH')")or die(mysql_error()); 
        echo "New: <strong>".stripslashes($teamH)."</strong> (home team) inserted into the database.<br>"; 
    } 
    
    0

    你可能第二條語句是不是被稱爲mysql_affected_rows()不起作用如果您選擇語句的計數 - 該函數僅適用於您的CRUD操作。嘗試用mysql_num_rows()替換此代碼

    相關問題