2011-03-15 79 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>