2012-05-07 2 views
1

이 구문을 사용하면 필드에 레코드를 추가 할 수 있지만 항상 2 개의 레코드가 추가됩니다. 예를 들어 이름으로 Ana를 입력합니다. 출력은 2 Ana가됩니다. 그리고 내가 하나의 레코드를 삭제하면, 두 레코드는 테이블에서 삭제/제거됩니다. HEre는 레코드를 추가하는 sysntax입니다.테이블에 레코드 하나를 추가하는 방법

<?php 
$host="localhost"; // Host name 
$username="****"; // Mysql username 
$password="****"; // Mysql password 
$db_name="inventory"; // Database name 
$tbl_name="client"; // Table name 

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 


$con = mysql_connect("localhost","root",""); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
mysql_select_db("inventory", $con); 


$addclient="INSERT INTO client(account_name, maintenance_type, ma_status, ma_contract_start, ma_contract_end, ma_reference_no) 
VALUES ('". $_POST['account_name'] . "', '". $_POST['maintenance_type'] . "', '". $_POST['ma_status'] . "', '". $_POST['ma_contract_start'] . "', '". $_POST['ma_contract_end'] . "', '". $_POST['ma_reference_no'] . "')"; 

mysql_query($addclient,$con); 

if (!mysql_query($addclient,$con)) 
    { 
    die('Error: ' . mysql_error()); 
    } 
echo "1 record added"; 

mysql_close($con); 
+0

당신은 또한 빈 값/공지 사항 정의되지 않은 변수 도스 SQL 주입을 닫는 및 확인 작업을해야하며, 왜 두 번 연결? –

+0

@LawrenceCherone : 첫 번째 연결처럼 특정 사용자가 서버와 특정 데이터베이스에 허가되었는지 여부를 확인하는 것 같지만 다른 연결은 수퍼 유저 자격 증명을 사용하여 실제로 서버와 작업합니다. –

답변

2
... 
mysql_query($addclient,$con); 

if (!mysql_query($addclient,$con)) { 
... 

'는 mysql_query'의 첫 번째 통화가 일단 명령을 실행한다 (PL)이 라인. 'if'절의 두 번째 항목은 쿼리를 다시 수행합니다.

이 시도 :

... 
$result = mysql_query($addclient,$con); 

if (!$result) { 
... 
0

주석

mysql_query($addclient,$con); 
관련 문제