Likes Likes:  0
Resultaten 1 tot 15 van de 17
Pagina 1 van de 2 1 2 LaatsteLaatste
Geen

Onderwerp: PHP vraagje......

  1. #1
    Jan
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    PHP vraagje......

    Hallo, ik lees een csv bestand in. Regel voor regel wordt er op het scherm
    gegeven. Maar ik zou graag twee regesl uit het csv bestand achter elkaar op
    een regel willen hebben. Kan iemand me helpen ?
    Gr. Jan.



  2. #2
    Maarten Wierda
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Jan schreef:

    > Hallo,


    Hallo Jan,

    > ik lees een csv bestand in. Regel voor regel wordt er op het scherm
    > gegeven. Maar ik zou graag twee regesl uit het csv bestand achter
    > elkaar op een regel willen hebben. Kan iemand me helpen ?


    Ja, even de code posten die de regels op het scherm printen, dan moet
    dat zo te zien zijn.

    --
    Cheers,
    Maarten Wierda

  3. #3
    Jan
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......


    "Maarten Wierda" <moart3nAT@chelloDOT.invalid> schreef in bericht
    news:ebs1d5$1vri$1@nl-news.euro.net...
    > Jan schreef:
    >
    >> Hallo,

    >
    > Hallo Jan,
    >
    >> ik lees een csv bestand in. Regel voor regel wordt er op het scherm
    >> gegeven. Maar ik zou graag twee regesl uit het csv bestand achter
    >> elkaar op een regel willen hebben. Kan iemand me helpen ?

    >
    > Ja, even de code posten die de regels op het scherm printen, dan moet
    > dat zo te zien zijn.
    >
    > --
    > Cheers,
    > Maarten Wierda


    Hier een stukje van mijn code...... :

    $hoofd_cat = $fields[0];
    $sub_cat = $fields[1];
    $omschrijving = $fields[2];
    $prijs = $fields[3];

    echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    CELLPADDING=0>");

    if ($hoofd_cat == "1") {
    $kleur = echoColor();
    echo "<TR>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$sub_cat</FONT></TD>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$omschrijving</FONT></TD>
    <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    }

    } // eind if $line_num
    } // eind while($fcontents)
    } // eind if ($regels)
    } // eind if ($fcontents)


    Gr. Jan



  4. #4
    Maarten Wierda
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Jan schreef:

    >>> ik lees een csv bestand in. Regel voor regel wordt er op het
    >>> scherm gegeven. Maar ik zou graag twee regesl uit het csv bestand
    >>> achter elkaar op een regel willen hebben. Kan iemand me helpen ?

    >> Ja, even de code posten die de regels op het scherm printen, dan
    >> moet dat zo te zien zijn.

    >
    > Hier een stukje van mijn code...... :


    <snip>

    Kun je nog ietsje meer code posten, Jan? Misschien vanaf de while-lus?

    Of zijn er al mensen die op basis van Jan's geposte code een oplossing
    kunnen bieden?


    --
    Cheers,
    Maarten Wierda

  5. #5
    Rik
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Jan wrote:
    > "Maarten Wierda" <moart3nAT@chelloDOT.invalid> schreef in bericht
    > news:ebs1d5$1vri$1@nl-news.euro.net...
    >> Jan schreef:
    >>> ik lees een csv bestand in. Regel voor regel wordt er op het scherm
    >>> gegeven. Maar ik zou graag twee regesl uit het csv bestand achter
    >>> elkaar op een regel willen hebben. Kan iemand me helpen ?

    >>
    >> Ja, even de code posten die de regels op het scherm printen, dan moet
    >> dat zo te zien zijn.
    >>

    > Hier een stukje van mijn code...... :
    >
    > $hoofd_cat = $fields[0];
    > $sub_cat = $fields[1];
    > $omschrijving = $fields[2];
    > $prijs = $fields[3];
    >
    > echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    > CELLPADDING=0>");


    Je maakt aparte tabellen voor _elke_ regel?????
    Lijkt me niet helemaal de bedoeling :-).
    Zet voor je while loop: $even = -1;

    > if ($hoofd_cat == "1") {
    > $kleur = echoColor();


    if($even == -1) echo '<tr>';

    > echo "<TD> etc....</TD>";


    if($even == 1) echo '</tr>';
    $even *= -1;

    Dan later in de code een controle of je met een oneven of even nummer bent
    afgesloten:
    if($even == 1) echo '<td colspan="3"></td></tr>';

    In het posten van code, probeer zo veel mogelijk nutteloze zaken weg te
    halen (zoals HTML attributen etc.). Dat maakt het voor de mensen makkelijkr
    te lezen en aantrekkelijker een antwoord voor je te zoeken.

    Overigens, als ik je HTML zie: je hebt toch wel van CSS gehoord? Dat scheelt
    je donders veel (antieke) HTML code...

    Groeten,
    --
    Rik Wasmus



  6. #6
    Michiel de Roo
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Jan wrote:
    > echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    > CELLPADDING=0>");
    >
    > if ($hoofd_cat == "1") {
    > $kleur = echoColor();
    > echo "<TR>
    > <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    > size=\"3\">$sub_cat</FONT></TD>
    > <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    > size=\"3\">$omschrijving</FONT></TD>
    > <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    > color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    > }


    echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    CELLPADDING=0><TR>");

    $i=0;
    while (....) {

    $i++;
    if($i%2==0) echo "</TR><TR>";

    echo "
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$sub_cat</FONT></TD>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$omschrijving</FONT></TD>
    <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD>";
    }

    echo "</TR>";

    niet getest, maar zoiets is het. $i%2 test of $i even of oneven is
    (deelbaar door twee zonder rest). Kun je ook $i%3 van maken als je er drie
    op een regel wilt.

  7. #7
    Rik
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Michiel de Roo wrote:
    > Jan wrote:
    >> echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    >> CELLPADDING=0>");
    >>
    >> if ($hoofd_cat == "1") {
    >> $kleur = echoColor();
    >> echo "<TR>
    >> <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    >> size=\"3\">$sub_cat</FONT></TD>
    >> <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    >> size=\"3\">$omschrijving</FONT></TD>
    >> <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    >> color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    >> }

    >
    > echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    > CELLPADDING=0><TR>");
    >
    > $i=0;
    > while (....) {
    >
    > $i++;
    > if($i%2==0) echo "</TR><TR>";


    Houd je wel in de gaten dat dit de eerste keer niet moet gebeuren? Een
    ongeopende tr kan natuurlijk niet gesloten worden.

    > echo "
    > <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    > size=\"3\">$sub_cat</FONT></TD>
    > <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    > size=\"3\">$omschrijving</FONT></TD>
    > <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    > color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD>";
    > }
    >
    > echo "</TR>";
    >
    > niet getest, maar zoiets is het. $i%2 test of $i even of oneven is
    > (deelbaar door twee zonder rest). Kun je ook $i%3 van maken als je er
    > drie op een regel wilt.


    En een check of er de rij al vol zit of niet.
    Zou je kunnen doen door:

    <?php
    $num = 4;//of 2,3 op een rij, kan alles zijn.
    $fields = 3;//hoeveel cellen een 'record' gebruikt, in dit geval 3.
    $i = 0;
    while(/* tja, dat hebben we niet vernomen */){
    $i++;
    if(($i % $num) == 1) echo '<tr>';
    /* outpur van cellen */
    if(($i % $num) == 0) echo '</tr>';
    }
    if(($i % $num) != 0){
    echo '<td colspan="'.($fields * ($i % $num)).'"'></td></tr>';
    }

    ?>


    Groeten,
    --
    Rik Wasmus



  8. #8
    Jan
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje...... ik bak er niks van, erg he

    <KNIP>

    > Overigens, als ik je HTML zie: je hebt toch wel van CSS gehoord? Dat
    > scheelt
    > je donders veel (antieke) HTML code...
    >
    > Groeten,
    > --
    > Rik Wasmus
    >
    >


    Ga ik zeker dan dat idee met CSS, bedankt voor de tip!

    Maar ik bak er niks van........erg he. Ik plaats nu de geheele code
    misschien
    kan iemand aangeven wat ik verkeerd doe, ik zel kom er niet meer uit......

    twee regels uit mijn csv bestand wat op een regel moet komen:
    1;HP PIV 1.7 GHz VL800;? 177,01 ;;;;;;
    1;256 / 40 / cd / snd / lan; ;;;;;;

    dus eigenlijk zo :
    HP PIV 1.7 GHz VL800 256 / 40 / cd / snd / lan ? 177,01


    <?PHP

    function echoColor() {
    static $counter=0;
    $kleur1="#FFF3E7";
    $kleur2="********";
    $counter++;
    if ($counter%2) return $kleur1;
    return $kleur2;
    }

    // Bestandsnaam van het comma-separated bestand
    $filename = "producten.csv";

    // Teken waarmee de velden van elkaar worden gescheiden
    $delimiter = ";";

    // Lees het bestand in
    $fcontents = @file($filename);

    // Kijk of het bestand werd gevonden
    if (!$fcontents) {

    // Fout: bestand niet gevonden
    echo("<B>Fout</B><P>Het data-bestand werd niet gevonden.");

    } else {

    // Bestand dus wel gevonden, controleer of het wel inhoud bevat (of het meer
    dan 1 regel lang is)
    $regels = count($fcontents);

    if ($regels < 2) {
    echo("<B>Fout</B>Het data-bestand is leeg");
    } else {

    // kopregel
    echo "<CENTER>";
    echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    CELLPADDING=0>");

    echo "<TR>
    <TD WIDTH=\"600\" bgcolor=\"#ff9e0f\"><FONT color=\"#FFFF00\"><B><FONT
    size=\"2\">Omschrijving</FONT></B></TD>
    </TR>";


    $even = -1; // toegevoegd !


    // Ga het bestand regel voor regel af
    while (list ($line_num, $line) = each ($fcontents)) {

    // Sla eerste regel over (0 is geen regel overslaan)
    if ($line_num>=0) {

    // Splits de regel in aparte velden
    $fields = explode($delimiter, $line);

    // Benoem de velden voor de duidelijkheid. Nummering begint bij 0
    $hoofd_cat = $fields[0];
    $omschrijving = $fields[1];
    $prijs = $fields[2];

    echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    CELLPADDING=0>");

    if ($hoofd_cat == "1") {
    $kleur = echoColor();

    if($even == -1) echo '<tr>'; // toegevoegd !
    // echo "<TR>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$sub_cat</FONT></TD>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$omschrijving</FONT></TD>
    <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    }

    if($even == 1) echo '</tr>'; // toegevoegd !
    $even *= -1; // toegevoegd !

    if($even == 1) echo '<td colspan="3"></td></tr>'; // toegevoegd !



    } // eind if $line_num
    } // eind while($fcontents)
    } // eind if ($regels)
    } // eind if ($fcontents)

    echo "</CENTER>";
    echo "</TABLE>";
    echo "</TABLE>";
    echo "<BR>";
    ?>




  9. #9
    Rik
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje...... ik bak er niks van, erg he

    Jan wrote:
    > <KNIP>
    >
    >> Overigens, als ik je HTML zie: je hebt toch wel van CSS gehoord? Dat
    >> scheelt
    >> je donders veel (antieke) HTML code...
    >>
    >> Groeten,
    >> --
    >> Rik Wasmus
    >>
    >>

    >
    > Ga ik zeker dan dat idee met CSS, bedankt voor de tip!
    >
    > Maar ik bak er niks van........erg he. Ik plaats nu de geheele code
    > misschien
    > kan iemand aangeven wat ik verkeerd doe, ik zel kom er niet meer
    > uit......
    >
    > twee regels uit mijn csv bestand wat op een regel moet komen:
    > 1;HP PIV 1.7 GHz VL800;? 177,01 ;;;;;;
    > 1;256 / 40 / cd / snd / lan; ;;;;;;
    >
    > dus eigenlijk zo :
    > HP PIV 1.7 GHz VL800 256 / 40 / cd / snd / lan ? 177,01


    Kijk, dat maakt behoorlijk uit.
    Is er een erg goede reden voor dat je deze 2 gekoppelde zaken op 2 regels in
    je csv wil hebben? Ik kan de boel makkelijk voor je herschrijven, maar het
    lijkt mij een structureel betere aanpak deze informatie gewoon op 1 regel te
    zetten.

    Wat is de reden voor de lege velden eigenlijk?

    Groeten,
    --
    Rik Wasmus



  10. #10
    Jan
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje...... ik bak er niks van, erg he


    "Rik" <luiheidsgoeroe@hotmail.com> schreef in bericht
    news:20673$44e1f17c$8259c69c$9925@news1.tudelft.nl ...
    > Jan wrote:
    >> <KNIP>
    >>
    >>> Overigens, als ik je HTML zie: je hebt toch wel van CSS gehoord? Dat
    >>> scheelt
    >>> je donders veel (antieke) HTML code...
    >>>
    >>> Groeten,
    >>> --
    >>> Rik Wasmus
    >>>
    >>>

    >>
    >> Ga ik zeker dan dat idee met CSS, bedankt voor de tip!
    >>
    >> Maar ik bak er niks van........erg he. Ik plaats nu de geheele code
    >> misschien
    >> kan iemand aangeven wat ik verkeerd doe, ik zel kom er niet meer
    >> uit......
    >>
    >> twee regels uit mijn csv bestand wat op een regel moet komen:
    >> 1;HP PIV 1.7 GHz VL800;? 177,01 ;;;;;;
    >> 1;256 / 40 / cd / snd / lan; ;;;;;;
    >>
    >> dus eigenlijk zo :
    >> HP PIV 1.7 GHz VL800 256 / 40 / cd / snd / lan ? 177,01

    >
    > Kijk, dat maakt behoorlijk uit.
    > Is er een erg goede reden voor dat je deze 2 gekoppelde zaken op 2 regels
    > in
    > je csv wil hebben? Ik kan de boel makkelijk voor je herschrijven, maar het
    > lijkt mij een structureel betere aanpak deze informatie gewoon op 1 regel
    > te
    > zetten.
    >
    > Wat is de reden voor de lege velden eigenlijk?
    >
    > Groeten,
    > --
    > Rik Wasmus


    Ik Probeer het uit te leggen en ik hoop er ook iets van te leren. Ik heb een
    csv bestand
    waar op de even regels bijv het type pc staat en daar achter de prijs. Op
    de oneven
    regels staan de specificaties. Leuk zou zijn om dit allemaal op een regel te
    krijgen en
    gewisseld met een kleurtje. Nu met mijn freubelwerk uit een PHP boek krijg
    ik het
    volgende
    http://jansfotos.hobby-site.com/prij..._producten.php

    Lege velden wil ik eigenlijk niet, is meer om het overzichtelijk te laten
    zien.

    ( Ik doe dit om bezig te zijn, zit in een rolstoel met COPD beperkingen, en
    ook om
    mijn kennis te helpen met zijn website.)

    Groet, Jan.



  11. #11
    Michiel de Roo
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Rik wrote:
    > Michiel de Roo wrote:
    >
    >>Jan wrote:
    >>
    >>>echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    >>>CELLPADDING=0>");
    >>>
    >>>if ($hoofd_cat == "1") {
    >>>$kleur = echoColor();
    >>>echo "<TR>
    >>><TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    >>>size=\"3\">$sub_cat</FONT></TD>
    >>><TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    >>>size=\"3\">$omschrijving</FONT></TD>
    >>><TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    >>>color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    >>>}

    >>
    >>echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    >>CELLPADDING=0><TR>");
    >>
    >>$i=0;
    >>while (....) {
    >>
    >>$i++;
    >>if($i%2==0) echo "</TR><TR>";

    >
    >
    > Houd je wel in de gaten dat dit de eerste keer niet moet gebeuren? Een
    > ongeopende tr kan natuurlijk niet gesloten worden.


    gebeurt direct na de <table...>. De eerste keer geldt $i=1, dus dan
    gebeurt er niks.



  12. #12
    Rik
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    Michiel de Roo wrote:
    > Rik wrote:
    >> Michiel de Roo wrote:
    >>
    >>> Jan wrote:
    >>>
    >>>> echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    >>>> CELLPADDING=0>");
    >>>>
    >>>> if ($hoofd_cat == "1") {
    >>>> $kleur = echoColor();
    >>>> echo "<TR>
    >>>> <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    >>>> size=\"3\">$sub_cat</FONT></TD>
    >>>> <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    >>>> size=\"3\">$omschrijving</FONT></TD>
    >>>> <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    >>>> color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    >>>> }
    >>>
    >>> echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    >>> CELLPADDING=0><TR>");
    >>>
    >>> $i=0;
    >>> while (....) {
    >>>
    >>> $i++;
    >>> if($i%2==0) echo "</TR><TR>";

    >>
    >>
    >> Houd je wel in de gaten dat dit de eerste keer niet moet gebeuren?
    >> Een ongeopende tr kan natuurlijk niet gesloten worden.

    >
    > gebeurt direct na de <table...>. De eerste keer geldt $i=1, dus dan
    > gebeurt er niks.


    Oeps, te snel over de code gekeken, je m'excuse.

    Grtz,
    --
    Rik Wasmus



  13. #13
    Jan
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......


    >>> Houd je wel in de gaten dat dit de eerste keer niet moet gebeuren?
    >>> Een ongeopende tr kan natuurlijk niet gesloten worden.

    >>
    >> gebeurt direct na de <table...>. De eerste keer geldt $i=1, dus dan
    >> gebeurt er niks.

    >
    > Oeps, te snel over de code gekeken, je m'excuse.
    >
    > Grtz,
    > --
    > Rik Wasmus
    >

    <KNIP>

    > Overigens, als ik je HTML zie: je hebt toch wel van CSS gehoord? Dat
    > scheelt
    > je donders veel (antieke) HTML code...
    >
    > Groeten,
    > --
    > Rik Wasmus
    >


    Sorry maar ik kom er nog niet uit Rik........ misschien kun je in
    onderstaande
    code aangeven wat ik kan veranderen ?

    Groet, Jan.



    Maar ik bak er niks van........erg he. Ik plaats nu de geheele code
    misschien
    kan iemand aangeven wat ik verkeerd doe, ik zel kom er niet meer uit......

    twee regels uit mijn csv bestand wat op een regel moet komen:
    1;HP PIV 1.7 GHz VL800;? 177,01 ;;;;;;
    1;256 / 40 / cd / snd / lan; ;;;;;;

    dus eigenlijk zo :
    HP PIV 1.7 GHz VL800 256 / 40 / cd / snd / lan ? 177,01


    <?PHP

    function echoColor() {
    static $counter=0;
    $kleur1="#FFF3E7";
    $kleur2="********";
    $counter++;
    if ($counter%2) return $kleur1;
    return $kleur2;
    }

    // Bestandsnaam van het comma-separated bestand
    $filename = "producten.csv";

    // Teken waarmee de velden van elkaar worden gescheiden
    $delimiter = ";";

    // Lees het bestand in
    $fcontents = @file($filename);

    // Kijk of het bestand werd gevonden
    if (!$fcontents) {

    // Fout: bestand niet gevonden
    echo("<B>Fout</B><P>Het data-bestand werd niet gevonden.");

    } else {

    // Bestand dus wel gevonden, controleer of het wel inhoud bevat (of het meer
    dan 1 regel lang is)
    $regels = count($fcontents);

    if ($regels < 2) {
    echo("<B>Fout</B>Het data-bestand is leeg");
    } else {

    // kopregel
    echo "<CENTER>";
    echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    CELLPADDING=0>");

    echo "<TR>
    <TD WIDTH=\"600\" bgcolor=\"#ff9e0f\"><FONT color=\"#FFFF00\"><B><FONT
    size=\"2\">Omschrijving</FONT></B></TD>
    </TR>";


    $even = -1; // toegevoegd !


    // Ga het bestand regel voor regel af
    while (list ($line_num, $line) = each ($fcontents)) {

    // Sla eerste regel over (0 is geen regel overslaan)
    if ($line_num>=0) {

    // Splits de regel in aparte velden
    $fields = explode($delimiter, $line);

    // Benoem de velden voor de duidelijkheid. Nummering begint bij 0
    $hoofd_cat = $fields[0];
    $omschrijving = $fields[1];
    $prijs = $fields[2];

    echo ("<TABLE BORDER=0 WIDTH=\"600\" HEIGHT=\"20\" CELLSPACING=0
    CELLPADDING=0>");

    if ($hoofd_cat == "1") {
    $kleur = echoColor();

    if($even == -1) echo '<tr>'; // toegevoegd !
    // echo "<TR>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$sub_cat</FONT></TD>
    <TD WIDTH=\"300\" BGCOLOR=\"$kleur\"><FONT color=\"#000000\"><FONT
    size=\"3\">$omschrijving</FONT></TD>
    <TD WIDTH=\"200\" BGCOLOR=\"$kleur\" align=\"right\"><FONT
    color=\"#000000\"><FONT size=\"3\">$prijs</FONT></TD></TR>";
    }

    if($even == 1) echo '</tr>'; // toegevoegd !
    $even *= -1; // toegevoegd !

    if($even == 1) echo '<td colspan="3"></td></tr>'; // toegevoegd !



    } // eind if $line_num
    } // eind while($fcontents)
    } // eind if ($regels)
    } // eind if ($fcontents)

    echo "</CENTER>";
    echo "</TABLE>";
    echo "</TABLE>";
    echo "<BR>";
    ?>





  14. #14
    Warden Dave
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    "Jan" <janvh@hotmail.com> wrote:

    > twee regels uit mijn csv bestand wat op een regel moet komen:
    > 1;HP PIV 1.7 GHz VL800;? 177,01 ;;;;;;
    > 1;256 / 40 / cd / snd / lan; ;;;;;;
    >
    > dus eigenlijk zo :
    > HP PIV 1.7 GHz VL800 256 / 40 / cd / snd / lan ? 177,01

    <knip | PHP script>

    Er klopt in dat script veel niet; o.a. de maatvoering der elementen is
    niet passend, het refereren aan niet bestaande variabelen (als bijv.
    '$sub_cat') is, zeg, 'suboptimaal' en het werken met de even en oneven
    rijen gaat daarbij niet op de manier die nodig is; maar dat zal deels
    komen door een misverstand bij anderen...

    Laat is een simpel maar volledig voorbeeldje geven dat m.i. al aardig doet
    wat je wilt:

    <html><head>

    <title
    >Example</title>


    <style
    type = "text/css"
    >


    body {
    font-size : 100%;
    background : #fff;
    color : #000;
    }

    table.prodTable {
    border-collapse : collapse;
    }

    table.prodTable th {
    background : #000;
    color : #fff;
    border : 1px solid #fff;
    }

    table.prodTable td {
    border : 1px solid #fff;
    padding : .1em .5em;
    }

    tr.prodrow0 {
    background : #ededca;
    }

    tr.prodrow1 {
    background : #e8e8e8;
    }

    </style>

    <script
    type = "text/javascript"
    >


    </script>

    </head>

    <body><?php

    $filename = "producten.csv";
    $delimiter = ";";
    $fcontents = @file($filename);

    if (!$fcontents) {
    echo("<B>Fout</B><P>Het data-bestand werd niet gevonden.");
    }
    else {

    if (count($fcontents) < 2) {
    echo("<b>Fout</b>Het data-bestand is leeg.");
    }
    else {

    echo "<table",
    " class = 'prodTable'",
    " align = 'center'",
    " cellspacing = '0'",
    " cellpadding = '2'",
    " border = '1'",
    ">";

    echo "<tr>";
    echo "<th>Omschrijving</th>",
    "<th>Specificaties</th>",
    "<th>Prijs</th>";
    echo "</tr>";

    $rowCount = 0;

    for ($i=0; $i<count($fcontents); $i++) {

    if (!($line = trim($fcontents[$i]))) continue;
    $fields = explode($delimiter, $line);
    $hoofd_cat = $fields[0] + 0;
    $omschrijving = $fields[1];
    $prijs = $fields[2];

    $i++; if ($i==count($fcontents)) break;
    if (!($line = trim($fcontents[$i]))) continue;
    $fields = explode($delimiter, $line);
    $spec = $fields[1];

    if ($hoofd_cat == 1) {

    echo "<tr",
    " class = 'prodrow" . ($rowCount & 1) . "'",
    ">";
    echo "<td>" . htmlspecialchars($omschrijving) . "</td>",
    "<td>" . htmlspecialchars($spec) . "</td>",
    "<td>" . htmlspecialchars($prijs) . "</td>";
    echo "</tr>";

    $rowCount++;
    }
    }
    echo "</table>";
    }
    }

    ?></body></html>


    WD


  15. #15
    Warden Dave
    PHP vraagje......
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: PHP vraagje......

    "Warden Dave" <warden_dave@mnsys.invalid> wrote:

    > Laat is een simpel maar volledig voorbeeldje geven

    <knip>

    Ik vergat de voorbeeld URL: http://www.mnsys.org/temp/csv.php

    WD

Pagina 1 van de 2 1 2 LaatsteLaatste

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics