2012-11-01 7 views
0

외부 파일에서 여러 행의 데이터를 추출하는 스크립트가 있는데,이 행을 데이터베이스에 각각 업로드해야합니다. 내 루프 안에 쿼리를 넣었지만 아무것도 수행하지 않습니다. 오류보고가 켜져 있어도 아무 것도 얻지 못합니다. 데이터베이스를 확인했지만 아무것도 업로드되지 않았습니다.SQL 쿼리가 루프에서 작동하지 않습니다.

올바른 방법은 무엇입니까? 미리 감사드립니다.

내 코드 : 오류 Duplicate entry for key 'PRIMARY'을 언급 한

$size = $_FILES['file']['size']; 
$filename = $_FILES['file']['tmp_name']; 
$max_filesize = 100000; 
    if($size > $max_filesize) //check file size 
    die('File is too large'); 

if(file_exists($filename)){ 
$fp = fopen($filename, "r"); 
$str = fread($fp, filesize($filename)); //file text stored in variable 
$br = "\n";   //search for new row 
$rows = substr_count($str,$br); //number of rows 
echo "Rows: ". $rows."<br />"; 
$row = explode("\n",$str); 

$x=0; 
while($x<=$rows) 
    { 
    $field = $row[$x]; 
    $exp = explode("|",$field); 

    $case_number = $exp[1]; 
    $unknown1 = $exp[2]; 
    $chapter = $exp[3]; 
    $filed = $exp[8]; 
    //tons more variables, removed for readability 

    $addrow = mysql_query("INSERT INTO records (case_number, wild1, chapter, filed) VALUES('".$case_number."', '".$unknown1."', '".$chapter."', '".$filed."')"); 
    if($addrow) 
    { 
    echo "<p style=\"font-weight:bold\">Row ".$x." uploaded</p>"; 
    }else{ 
die(mysql_error()); 
} 

    $x++; 
    } 
fclose($fp); 
} 
+0

무엇이 오류입니까? –

+1

쿼리에서 오류를 검사하지 않습니다. 그것을 추가하십시오. 설명서에는 방법이 나와 있습니다. http://www.php.net/manual/en/function.mysql-query.php 매뉴얼은 mysql 라이브러리의 대안을 보여줄 것이다. –

+0

@ Mr.Alien @Pekka, 나는 error_reporting (E_ALL); ini_set ('display_errors', '1');'내 문서 상단에 있습니다. 나는 오류가 전혀 없다. 루프 하단의 에코도 표시되지 않습니다. –

답변

1

그래서 당신은 PRIMARY로 설정되어 컬럼에 중복 값을 가질 수 없습니다.

관련 문제