Avatar billede axel21 Juniormester
27. marts 2009 - 15:21 Der er 5 kommentarer og
1 løsning

Hjælp til at sammenligne data

Hej,


Jeg har en CSV fil hvor der er en masse data i, hvor primary key er et CVR nummer.

Så har jeg en tabel i MySQL hvor jeg har alle de CVR numre jeg er interesseret i.

Og nu kommer det spændende, jeg vil kun have de data fra CSV filen, som passer med data fra min MySQL database.

Håber dælme i forstår det jeg vil.

Her er mit script.


<?
include "connect.php";

$handle = fopen("cvr.csv", "r");

$import = mysql_query("SELECT cvr FROM virksomheder WHERE cvr > '0'");
   
while($row = mysql_fetch_array($import))
{

while (($data = fgetcsv($handle, 1000, ";")) !== FALSE)
{

if($row[cvr] == $data[1])
{
      $import1="INSERT into virksomhederfracvr(cvrnr,pnr,navn,navn1,adresse,bynavn,postnr,postdist,region,kommunenavn,antalansatte,virkform,virkstartdato,branchenr,branchetekst,telefon,telefax,email) values('$data[1]','$data[2]','$data[3]','$data[4]','$data[7]','$data[8]','$data[11]','$data[12]','$data[15]','$data[17]','$data[32]','$data[34]','$data[39]','$data[42]','$data[46]','$data[49]','$data[50]','$data[51]')";
      mysql_query($import1) or die(mysql_error());
    }
}
}
    fclose($handle);
    print "Import done";
?>
Avatar billede jenz3n Nybegynder
27. marts 2009 - 15:49 #1
Hvad er problemet med det script du allerede har lavet?
Avatar billede axel21 Juniormester
27. marts 2009 - 15:53 #2
Jeg kan ikke få den til at sammenligne CVR numre for daatabasen og CSV filen, og indsætte data i MySQL databasen
Avatar billede axel21 Juniormester
27. marts 2009 - 16:30 #3
Jeg har fundet ud af at den kun kører:

while (($data = fgetcsv($handle, 1000, ";")) !== FALSE)
{


løkken en gang.?
Avatar billede axel21 Juniormester
27. marts 2009 - 16:36 #4
Fejlen var følgende:

$handle = fopen("cvr.csv", "r");


skulle ind i while løkken.
Avatar billede fant0mas Nybegynder
27. marts 2009 - 16:37 #5
$handle = fopen("cvr.csv", "r");
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE)
{
$sql = "SELECT cvs FROM virksomheder WHERE cvr = $data[1]";
$query = mysql_query($sql);
$num_rows = mysql_num_rows($query);
if($num_rows){
    echo 'Yahooo dette cvr finde i databasen:'.$data[1].'. Lad os indsætte det.<br />'
}
}
Avatar billede axel21 Juniormester
27. marts 2009 - 16:45 #6
Tak for svaret fant0mas.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester