fgetcsv problemstilling.
Jeg er ved at lave en hjemmeside for en badminton-forening. I den forbindelse skal en månedligt have synkroniseret hjemmesiden medlemsdatabase på hjemmesiden, med foreningens database (noget foreningshalløjsa de har købt sig til.Det system de kører kan lave en kommaseperet csv-fil, og jeg kan dermed via et simpelt script importere dataene til min mysql databse. Det gør jeg med følgende kode:
<?
require 'includes/conn.php'; // Forbindelse til databasen
$handle = fopen("test.csv", "r");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
$data = array_pad($data,20,'');
$input = "'" . implode("','", $data) . "'";
$sql = "INSERT INTO members (Gruppenummer,Gruppenavn,Gruppetype,Navn,Adresse,Adresse2,Postnr,Bynavn,Telefon,Mobil,Email,Born,Hverv,Personkey,Referencenummer,Licensnummer,Note,Medlemsstatus,Indmeldelsesdato,Udmeldelsesdato) VALUES ($input)";
mysql_query($sql) or die(mysql_error());
}
fclose($handle);
echo "Data er hermed importeret";
?>
Det fungerer egentlig også ok, men jeg har et meget forstyrende problem. Hvis der under en af felterne er brugt et:
'
Fejler hele scriptet. HAr jeg mulighed for at få scriptet til at fjerne disse, inden den kører en "insert"? Det er jo et problem i mysql query'en?
