php probleem

  • beste leden,
    Ik heb nu:

    PHP
    $menuleft = array(
    "Informatie" => array(
    "nieuws.php" => "Nieuws",
    "status.php" => "Status",
    "extra.php" => "Extra",
    "kladblok.php" => "Notitie"
    ),


    Maar nu wil ik tussen extra en notitie dat als je meer dan 5 keer heb gedoneerd, een extra optie te zien krijg, hoe doe ik dit?


    ik heb wel all iets maar krijg dan error page 500


    PHP
    if($donated =5){
    "donated.php" => "Je hebt gedoneert",
    }
  • dan komt het onder notitie te staan,
    Maar het moet tussen Extra en Notitie staan,
    Hoe jij het nu hebt gedaan zover was ik all,
    Maar als ik dat zelfde tussen extra en notitie zet krijg ik een error page 500 te zien.

  • Probeer dit eens:



    Fout kan liggen omdat je een , te veel of te weining had... of op een verkeerde plaats

  • het probleem is dat jij een array in een array maakt wat het wat complexer maakt om het goed te zetten je wilt donated er tussen knallen wanneer een persoon meer als 5x gedoneerd heeft als je:


    PHP
    if ($donated = 5) { }


    doet dan krijgt de gebruiker alleen die optie te zien wanneer deze ook daadwerkelijk alleen maar 5x gedoneerd heeft zodra dat 6x wordt verdwijnt de optie weer dus de logische oplossing zou zijn:


    PHP
    if ($donated > 4) { }


    Maar nu zitten we nog met het array probleem, voordeel echter je hebt de 2de array een naam gegeven "Informatie" daardoor kan je al veel meer met de array spelen! :) dat geeft gelukkig al voordeel waardoor je meer kan.


    wanneer je een optie wilt toevoegen aan een bepaalde array met naam en functie kan je hem gewoon erachter duwen met:


    PHP
    $array[] = $var;


    Dus in jou geval zou het kunnen zijn dat je hem er achter duwt met de volgende code:


    PHP
    $menuleft['informatie'][] = 'donated.php' =>  'Je hebt gedoneerd';


    Wat je nu doet is je zoek de array van 'informatie' op en je pluurt een nieuw item voor dat array erbij. :) is toch allemaal best simpel?


    En totaal plaatje zo dan worden:

    PHP
    if ($donated > 4) {
         $menuleft['informatie'][] = 'donated.php' =>  'Je hebt gedoneerd';
    }


    En deze code hoef je niet eronder te zetten maar kan je bijvoorbeeld ook in je config duwen (wel is waar moet eerst $menuleft gedefinieerd zijn anders heb je er alsnog niks aan :))

  • Error 500 betekent dat er iets fout gaat op de server wat dat precies is kan van alles zijn vanwege dat de server gewoon een fout heeft en die niet kan defineren pleurt hij er een 500 error van weg, kan het zijn dat donated.php niet goed staat of in een andere map?


    Als je de link weg haalt doet hij het wel?
    Zo ja, dan moet je is goed naar gaan kijken wat er in donated.php staat aangezien daar de fout dan in ligt en niet in de rest van het script, het kan zijn een session die fout wordt gestart of html die helemaal naar de klote geholpen is, het kunnen zoveel dingen zijn :x

  • in_array? Deze optie is hiervoor niet eens nodig en is nutteloos hiervoor, in_array kan je zoeken naar een woord in de array en niet iets erin doen?


    En aangezien hij niets wilt opzoeken in de array maar iets erbij zetten in de array heeft het weinig zin?


    Maar als je alle scripts van donated weg haalt en nog steeds errors krijgt dan is het anders dan wat jij denkt want heeft hij dit altijd al gedaan of na een bepaalde wijziging?

  • Dat hoeft niet zo zeer, we zijn even dingen aan het uitsluiten wat het kan zijn :) Voor de rest wanneer je iets ander wijzigt in een ander script krijg je dan ook de 500 error melding? en welk script is het als ik vragen mag?


    Is het een bekend script of is het iets anders, zelf gemaakt? want vanuit daar kunnen we ook een stuk verder komen (Kijk even als je iets anders verandert dat je dan ook de error krijgt is er iets goed fout zo niet doe je toch echt iets fout :))

  • Het is een mafia source die eigenlijk niet is vrij gegeven, maar die ik zelf helemaal aan het debuggen ben en helemaal aan het aanpassen.
    Maar als ik iets anders veranderd krijg ik die error niet.
    Het script waar het nu over gaat laat aleen die menus zien in een array.

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!