Avatar billede lsskaarup Nybegynder
16. marts 2005 - 14:25 Der er 6 kommentarer og
1 løsning

Skriver fil rigtigt, men laver også en tom

Ja, jeg har lavet et script som udskriver nogle data i en csv-fil, der senere skal bruges til import i Navision. Det fungere godt nok, men jeg har opdaget at den åbenbart også laver en tom fil, som hedder ".cvs", men jeg kan ikke lige se hvorfor den skulle gøre det. Det skal siges, at problemet først at opstået efter at stien er blevet ændret lidt, så filerne skal lægges et andet sted end hvor jeg testede. Det mærkelige er, at under testen har der ingen problemer været.

Er det den efterfølgende kode som ikke virker helt optimalt, eller kan serveropsætningen havde noget betydning herfor?

//    require('system/global_defs.php');
//    include('static/opsaetning.php');
   
    echo $id = $_GET['id'];
//    $id = 1;
    //Array indeholdende alle felter fra db'en vedrørende ordren
    $res = array();
    for ($i=0;$i<=5;$i++) {//eventuelt tilbudsnummer i stedet for id efter where
        $ressql = mysql_query("SELECT *, ordre, rev FROM ordre, ordre".$i." WHERE ordre".$i.".id = $id && ordre.id = $id") or die(mysql_error);
        if (mysql_num_rows($ressql)) {
            $res = array_merge($res, mysql_fetch_assoc($ressql));
        }
    }
    //Til ordrenr. og revision
    $nr = $res['ordre'];
    $r = $res['rev'];   
    $ordre = $nr . ";" . $r;

    //Felter der skal bruges til identifikation i Navision
    $felter = array(
            array('344', '334', '335', '336'),
            array('379', '369', '370', '371'),
            array('356', '345', '346', '347'),
            array('368', '357', '358', '359'),
            array('391', '380', '381', '382'),
            array('396', '392', '393', '394'),
            array('407', '403', '404', '405'),
            array('466', '461', '462', '463'),
            array('428', '419', '420', '421'),
            array('428a', '419a', '420a', '421a'),
            array('446', '437', '438', '439'),
            array('446a', '437a', '438a', '439a'),
            array('436', '429', '430', '431'),
            array('454', '447', '448', '449'),
            array('412', '408', '409', '410'),
            array('473', '467', '468', '469'),
            array('402', '397', '398', '399'),
            array('418', '413', '414', '415'),
            array('460', '455', '456', '457'),
            array('460a', '455a', '456a', '457a')
        );

    //Henter de valgte felter og værdier for hvert enkelt produkt på kalkulationen
    $hej;
    for($j=0;$j<sizeof($felter);$j++) {
        //echo "asefsdf ".sizeof($felter[$j]);
        for ($i=0;$i<sizeof($felter[$j])-3;$i++) {
            $hej = $hej . $ordre . ";" . $felter[$j][$i] . ";" . $res["r".$felter[$j][$i]] . ";" . $res["r".$felter[$j][$i+1]] . ";" . $res["r".$felter[$j][$i+2]] . ";" . $res["r".$felter[$j][$i+3]];
        }
        $hej = $hej . "#";
    }

    //Henter DS statik, diverse, kvalitetskontrol
    $statik;
    for ($i=474;$i<477;$i++) {
        $statik = $statik . $ordre .";". $i .";". $res["r".$i] . ";#";
    }

    //Tillægspriser på kalkulation
    $tillæg = array('514', '515', '507', '508', '516', '517', '518', '519');

    $udlæg;
    foreach ($tillæg as $val) {
        $udlæg = $udlæg . $ordre .";". $val .";". $res["r".$val] . ";#";
    }

    $alt = $hej . $statik . $udlæg;
    //Udskriv til csv-fil
    $fil = fopen("//srv-fil1/produktion/Salgsstyklister ovf/" . $nr . ".csv", "w");//Ordrenr.csv f.eks. 9.csv
    fwrite($fil, $alt);
    fclose($fil);
Avatar billede stalle Nybegynder
16. marts 2005 - 19:25 #1
$alt = $hej . $statik . $udlæg;
    //Udskriv til csv-fil
if (isset($nr)){
    $fil = fopen("//srv-fil1/produktion/Salgsstyklister ovf/" . $nr . ".csv", "w");//Ordrenr.csv f.eks. 9.csv
    fwrite($fil, $alt);
    fclose($fil);
};
Avatar billede lsskaarup Nybegynder
16. marts 2005 - 22:40 #2
Kan det være derfor, en ordre har ellers altid et nummer.
Avatar billede stalle Nybegynder
16. marts 2005 - 23:20 #3
Det kan være fordi scriptet bliver udført hvor der ikke ligger noget i variablerne. Det er altid en god idé og lave tjek på de variabler man bruger, inden man bruger dem til andet
Avatar billede lsskaarup Nybegynder
17. marts 2005 - 09:57 #4
Jamen det mærkelige er at den laver 2, hvor den ene indeholder det den skal, og ikke kun 1 som så er tom
Avatar billede lsskaarup Nybegynder
29. marts 2005 - 09:06 #5
Hallo
Avatar billede lsskaarup Nybegynder
04. april 2005 - 08:12 #6
stalle, er du der?
Avatar billede lsskaarup Nybegynder
06. april 2005 - 10:05 #7
Nå, så må jeg jo prøve at oprette spørgsmålet igen
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