2016-09-09 9 views
1

だから私だ少し(再び1)と私のそれをデータベースにインポートするときにCSVデータセットから任意のアポストロフィを削除する必要があります...はPHP CSVのインポートから「アポストロフィを削除

コードIここに私の深さのうち現時点でように、私は正直だ場合は私もこの1で開始するか分からない

<?php 

include "connection.php"; //Connect to Database 

$deleterecords = "TRUNCATE TABLE riders_long"; //empty the table of its current records 
mysql_query($deleterecords); 

//Upload File 
if (isset($_POST['submit'])) { 
    if (is_uploaded_file($_FILES['filename']['tmp_name'])) { 
     echo "<h1>" . "File ". $_FILES['filename']['name'] ." uploaded successfully." . "</h1>"; 
     echo "<h2>Displaying contents:</h2>"; 
     readfile($_FILES['filename']['tmp_name']); 
    } 

    //Import uploaded file to Database 
    $handle = fopen($_FILES['filename']['tmp_name'], "r"); 

    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { 
     $import="INSERT into riders_long(Onlineentry,SaleID,FirstName,LastName,ClubTeamName,DOB,IsBCMember,MemberNo,Agreetermsandconditions,Agreeemailconfirmation,Agreeemailmarketing,LicenceCategory,Gender,Email,Daytimephone,Address1,Address2,TownCity,Region,Country,Postcode,EmergencyContactName,EmergencyContactPhoneNumber,DatePaid,AmountPaid,RefundAmount,PaymentType,Status) values('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$data[6]','$data[7]','$data[8]','$data[9]','$data[10]','$data[11]','$data[12]','$data[13]','$data[14]','$data[15]','$data[16]','$data[17]','$data[18]','$data[19]','$data[20]','$data[21]','$data[22]','$data[23]','$data[24]','$data[25]','$data[26]','$data[27]')"; 

     mysql_query($import) or die(mysql_error()); 
    } 

    fclose($handle); 

    print "Import done"; 

    //view upload form 
}else { 

    print "Upload new csv by browsing to file and clicking on Upload<br />\n"; 

    print "<form enctype='multipart/form-data' action='upload.php' method='post'>"; 

    print "File name to import:<br />\n"; 

    print "<input size='50' type='file' name='filename'><br />\n"; 

    print "<input type='submit' name='submit' value='Upload'></form>"; 

} 

?> 

...

を読み、私はstr_replace()機能を使用する必要があると推定してい...何か

の行に沿って
$remove = array("'"); 
$filtered = str_replace($remove, "", "Hello World of PHP"); 

$filteredは、「アポストロフィせずに文字列になりますが、その後、私はどこでどのように私は最善を開始する場所のこの

アドバイスが本当に

+0

きっとあなたが本当にアポストロフィを削除されていない何をする必要があるか、それはあなたのSER場合、彼らはあなたのSQL INSERT文 –

+0

を壊さないように、それらをエスケープするのですverでは、http://stackoverflow.com/questions/11077801/import-csv-to-mysql-table/36586798の回答として何かを使って直接ファイルをインポートすることができます。また、廃止予定のものの代わりにmysqli_またはPDOを使用することもできますmysql_関数とバインド変数を使用します。 (あなたが持っているクエリの型で使われていた古い方法は、すべてのフィールド(mysql_real_escape_string($ data [5]) ')のまわりで' mysql_real_escape_string – rypskar

答えて

1

使用file_get_contentsをいただければ幸いに統合したいについて少し混乱しています、このようなSTH:

$data = file_get_contents(...); 
$cleanData = str_replace("'","",$data); 
関連する問題