2011-03-15 78 views
-3

我最近購買了公司,包含不同客戶的數據庫的網站。它是建立。

我從它的移動網站現有的服務器(Linux)的我公司服務器(Windows Server 2008)。

我創建並導入數據庫連接一切正常。

我仍然可以編輯現有的客戶信息,但是當我試圖這樣的功能在停止工作的數據庫中創建新條目。

我肯定沒有文件被改變,這是一個在其他服務器上工作的函數。

這裏是一段代碼,進入信息

$sql = "insert into $DB.cleints (client_id, client_phone) values ($client_id, $client_phone) on duplicate key update client_id='$client_id', client_phone='$client_phone'"; 

mysql_query($sql); 

if (mysql_errno() != 0) { 
    echo "Sorry, there was an error adding this client"; 
    echo "\nsql=$sql\n"; 
    echo mysql_error(); 
} 
+1

它迴應什麼? – 2011-03-15 16:01:28

+2

是正確拼寫的「$ DB.cleints」嗎? – heldt 2011-03-15 16:01:36

+0

'$ DB.cleints'? – Mat 2011-03-15 16:01:39

回答

0

的錯誤是很抱歉,一個 誤差加法此客戶端SQL =插入 成databasename.clients(CLIENT_ID, client_phone)值(1, '18005555555')上的重複密鑰更新 CLIENT_ID = 1, client_phone = '18005555555' 在行1

閱讀您發佈的錯誤消息。

「重複鍵更新CLIENT_ID = 1,client_phone = '18005555555'」

是否有已經在表中的記錄與這兩個值? client_id & client_phone上有唯一索引嗎?

+0

不,沒有任何重複的內容 – Michael 2011-03-16 15:29:02

+0

@Michael你可以發佈'SHOW CREATE TABLE databasename'的輸出。客戶端?? – NuclearDog 2011-03-17 08:00:33

+0

我已經通過爲所有表單字段創建默認值來解決此問題。 – Michael 2011-03-28 19:46:48

0

我是一個新的mysql和php編碼。我遇到了同樣的問題,並且訪問mysql的基本方法非常完美。這裏是我的代碼

<?php 
$server = "localhost"; 
$user = "cscs"; 
$password = "C0va!CaRe"; 
$database = "cscs"; 

$link = mysqli_connect($server, $user, $password, $database); 

if(!$link){ 
    echo "Error connecting database, ".mysql_error(); 
} 

?> 

<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>PHP MySQL Test 1</title> 
</head> 

<body> 

<h2 style="text-align: center;">Database Test 1 - Creating a table manually and updating through form</h2> 

<form name="register" id="register" action="" method="post"> 

    <table width="60%" cellspacing='1' cellpadding="10" border="1"> 
     <tr> 
      <td width="45%" valign="middle" align="left">Full Name</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="full-name" id="full-name"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">Email</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="email" id="email"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">Phone</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="phone" id="phone"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">City</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="city" id="city"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">Country</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="country" id="country"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">User Name</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="username" id="username"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">Password</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="pass" id="pass"></td> 
     </tr> 

     <tr> 
      <td width="45%" valign="middle" align="left">Confirm Password</td> 
      <td width="55%" valign="middle" align="left"><input type="text" name="cpass" id="cpass"></td> 
     </tr> 

     <tr> 
      <td valign="middle" align="left" colspan="2"><input type="submit" name="submit" value="Register"></td> 

     </tr> 

    </table> 

</form> 

<?php 

if(isset($_POST['submit'])){ 

    $fullname = $_POST['full-name']; 
    $email = $_POST['email']; 
    $phone = $_POST['phone']; 
    $city = $_POST['city']; 
    $country = $_POST['country']; 
    $username = $_POST['username']; 
    $pass = $_POST['pass']; 

    mysqli_select_db($link,'cscs'); 

    $sql1 = "INSERT INTO userinfo (fullname, email, phone, city, country, username, password) VALUES ('{$fullname}', '{$email}', '{$phone}', '{$city}', '{$country}', '{$username}', '{$pass}')"; 

    if(mysqli_query($link, $sql1)) { 

     echo "Data inserted to database"; 

    } 

    else { 
     echo "Error updating database, ".mysql_error(); 
    } 


} 

?> 

</body> 
</html>