Likes Likes:  0
Resultaten 1 tot 15 van de 18
Pagina 1 van de 2 1 2 LaatsteLaatste
Geen
  1. #1
    Ruud
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    [PHP] header (location ...) werkt niet

    Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb alles
    al uitgebrobeerd en uitgezocht, maar kom er niet uit.

    Ik heb aan het begin van een pagina een script staan dat er voor moet
    zorgen dat de eerste 15 bezoekers naar een andere pagina moeten worden
    doorgestuurd:

    <?php

    $fp = fopen("counter.txt", "r+") or die("'Counter foutmelding'");
    flock($fp, LOCK_EX);
    $count = fread($fp, 10);
    rewind($fp);
    fwrite($fp, ++$count);
    flock($fp, LOCK_UN);
    fclose($fp);
    if ($count < 16) {
    header("Location: http://www.frankrijkvakantieland.nl");
    exit;
    }

    ?>

    De teller $count wordt met 1 verhoogd bij elk bezoek aan de pagina. Dit
    werkt want als ik na het if statement print ($count); zet wordt de
    teller keurig afgedrukt als de teller <16.

    Alleen header("Location: http://www.frankrijkvakantieland.nl"); wordt
    niet uitgevoerd.

    Waar kan dit aan liggen? PHP werkt overigens normaal op de site.
    --
    Ruud Couwenhoven

    www.frankrijkvakantieland.nl
    De site over het andere Frankrijk die op CD-Rom verder gaat

  2. #2
    Rene Pijlman
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Ruud:
    >Alleen header("Location: http://www.frankrijkvakantieland.nl"); wordt
    >niet uitgevoerd.
    >
    >Waar kan dit aan liggen?


    "The second special case is the "Location:" header. Not only does it send
    this header back to the browser, but it also returns a REDIRECT (302)
    status code to the browser unless some 3xx status code has already been
    set."
    http://nl2.php.net/header

    'unless' is altijd een gevaarlijk woord.

    De logische vervolgstap in het debugproces is naar de feitelijke
    HTTP-headers kijken die de client ontvangt.

    En foutafhandeling toevoegen aan de file handling natuurlijk.

    --
    René Pijlman

    Wat wil jij leren? http://www.leren.nl

  3. #3
    John Bokma
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Ruud wrote:

    > Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb alles
    > al uitgebrobeerd en uitgezocht, maar kom er niet uit.
    >
    > Ik heb aan het begin van een pagina een script staan dat er voor moet
    > zorgen dat de eerste 15 bezoekers naar een andere pagina moeten worden
    > doorgestuurd:
    >
    > <?php
    >
    > $fp = fopen("counter.txt", "r+") or die("'Counter foutmelding'");
    > flock($fp, LOCK_EX);
    > $count = fread($fp, 10);
    > rewind($fp);
    > fwrite($fp, ++$count);
    > flock($fp, LOCK_UN);
    > fclose($fp);
    > if ($count < 16) {
    > header("Location: http://www.frankrijkvakantieland.nl");
    > exit;
    > }
    >
    > ?>
    >
    > De teller $count wordt met 1 verhoogd bij elk bezoek aan de pagina.
    > Dit werkt want als ik na het if statement print ($count); zet wordt de
    > teller keurig afgedrukt als de teller <16.
    >
    > Alleen header("Location: http://www.frankrijkvakantieland.nl"); wordt
    > niet uitgevoerd.
    >
    > Waar kan dit aan liggen? PHP werkt overigens normaal op de site.


    breng het eens terug t

    <?php header("Location: http://www.frankrijkvakantieland.nl/") ?>

    Let op: de / aan het einde voorkomt mogelijk een extra interne rewrite
    van Apache, maar is vast niet de oorzaak van je probleem.

    --
    John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
    Website design: http://johnbokma.com/websitedesign/
    Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
    Tevreden opdrachtgevers: http://castleamber.com/testimonials.html



  4. #4
    Ruud
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    John Bokma <john@castleamber.com> wrote:

    > Ruud wrote:
    >
    > > Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb alles
    > > al uitgebrobeerd en uitgezocht, maar kom er niet uit.
    > >
    > > Ik heb aan het begin van een pagina een script staan dat er voor moet
    > > zorgen dat de eerste 15 bezoekers naar een andere pagina moeten worden
    > > doorgestuurd:
    > >
    > > <?php
    > >
    > > $fp = fopen("counter.txt", "r+") or die("'Counter foutmelding'");
    > > flock($fp, LOCK_EX);
    > > $count = fread($fp, 10);
    > > rewind($fp);
    > > fwrite($fp, ++$count);
    > > flock($fp, LOCK_UN);
    > > fclose($fp);
    > > if ($count < 16) {
    > > header("Location: http://www.frankrijkvakantieland.nl");
    > > exit;
    > > }
    > >
    > > ?>
    > >
    > > De teller $count wordt met 1 verhoogd bij elk bezoek aan de pagina.
    > > Dit werkt want als ik na het if statement print ($count); zet wordt de
    > > teller keurig afgedrukt als de teller <16.
    > >
    > > Alleen header("Location: http://www.frankrijkvakantieland.nl"); wordt
    > > niet uitgevoerd.
    > >
    > > Waar kan dit aan liggen? PHP werkt overigens normaal op de site.

    >
    > breng het eens terug t
    >
    > <?php header("Location: http://www.frankrijkvakantieland.nl/") ?>
    >
    > Let op: de / aan het einde voorkomt mogelijk een extra interne rewrite
    > van Apache, maar is vast niet de oorzaak van je probleem.


    Dat werkt helaas ook niet. Is er niet een andere manier om naar een
    nieuwe pagina te gaan?

    --
    Ruud Couwenhoven

    www.frankrijkvakantieland.nl
    De site over het andere Frankrijk die op CD-Rom verder gaat

  5. #5
    John Bokma
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Ruud wrote:

    > John Bokma <john@castleamber.com> wrote:
    >
    >> Ruud wrote:
    >>
    >> > Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb
    >> > alles al uitgebrobeerd en uitgezocht, maar kom er niet uit.
    >> >
    >> > Ik heb aan het begin van een pagina een script staan dat er voor
    >> > moet zorgen dat de eerste 15 bezoekers naar een andere pagina
    >> > moeten worden doorgestuurd:
    >> >
    >> > <?php
    >> >
    >> > $fp = fopen("counter.txt", "r+") or die("'Counter
    >> > foutmelding'"); flock($fp, LOCK_EX);
    >> > $count = fread($fp, 10);
    >> > rewind($fp);
    >> > fwrite($fp, ++$count);
    >> > flock($fp, LOCK_UN);
    >> > fclose($fp);
    >> > if ($count < 16) {
    >> > header("Location: http://www.frankrijkvakantieland.nl");
    >> > exit;
    >> > }
    >> >
    >> > ?>
    >> >
    >> > De teller $count wordt met 1 verhoogd bij elk bezoek aan de pagina.
    >> > Dit werkt want als ik na het if statement print ($count); zet wordt
    >> > de teller keurig afgedrukt als de teller <16.
    >> >
    >> > Alleen header("Location: http://www.frankrijkvakantieland.nl");
    >> > wordt niet uitgevoerd.
    >> >
    >> > Waar kan dit aan liggen? PHP werkt overigens normaal op de site.

    >>
    >> breng het eens terug t
    >>
    >> <?php header("Location: http://www.frankrijkvakantieland.nl/") ?>
    >>
    >> Let op: de / aan het einde voorkomt mogelijk een extra interne
    >> rewrite van Apache, maar is vast niet de oorzaak van je probleem.

    >
    > Dat werkt helaas ook niet. Is er niet een andere manier om naar een
    > nieuwe pagina te gaan?


    Ik sluit mij aan bij het advies van Rene, debug de headers. Check ook je
    error_log.

    Copy de code hieronder naar raw.pl en haal er mee je php script op.
    pas de URL regel aan:

    use strict;
    use warnings;

    use LWP::UserAgent;

    my $URL = 'http://www.frankrijkvakantieland.nl/foo.php';

    my $ua = LWP::UserAgent->new( );
    $ua->max_redirect( 0 );
    my $request = $ua->get( $URL );

    $request->is_success or die $request->status_line;

    my @content = split /\n/, $request->as_string;

    print $content[ 0 ];


    Dit geeft de statuscode.

    Je kan ook

    print $request->as_string;

    doen om alles te zien (ipv print $content[ 0 ]; )



    --
    John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
    Website design: http://johnbokma.com/websitedesign/
    Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
    Tevreden opdrachtgevers: http://castleamber.com/testimonials.html



  6. #6
    Jan Ehrhardt
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Ruud in nl.internet.www.server-side (Tue, 10 May 2005 17:42:49 +0200):

    >Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb alles
    >al uitgebrobeerd en uitgezocht, maar kom er niet uit.
    >
    >Ik heb aan het begin van een pagina een script staan dat er voor moet
    >zorgen dat de eerste 15 bezoekers naar een andere pagina moeten worden
    >doorgestuurd:
    >
    > <?php

    ^^

    Als daar spaties staan gaat het al mis. Die "<" moet echt het
    allereerste teken op je pagina zijn.

    Jan
    --
    Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

  7. #7
    John Bokma
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Jan Ehrhardt wrote:

    > Ruud in nl.internet.www.server-side (Tue, 10 May 2005 17:42:49 +0200):
    >
    >>Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb alles
    >>al uitgebrobeerd en uitgezocht, maar kom er niet uit.
    >>
    >>Ik heb aan het begin van een pagina een script staan dat er voor moet
    >>zorgen dat de eerste 15 bezoekers naar een andere pagina moeten worden
    >>doorgestuurd:
    >>
    >> <?php

    > ^^
    >
    > Als daar spaties staan gaat het al mis. Die "<" moet echt het
    > allereerste teken op je pagina zijn.


    Nooit geweten, en, geen probleem hier (4.3.7)

    <h1>geen probleem</h1> <?php echo "<p>test</p>" ?>

    werkt

    <?php echo "<p>test</p>" ?>

    ditto.

    --
    John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
    Website design: http://johnbokma.com/websitedesign/
    Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
    Tevreden opdrachtgevers: http://castleamber.com/testimonials.html



  8. #8
    Maarten Wierda
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    John Bokma wrote:

    >>> <?php

    >>
    >> ^^
    >>
    >> Als daar spaties staan gaat het al mis. Die "<" moet
    >> echt het allereerste teken op je pagina zijn.

    >
    > Nooit geweten, en, geen probleem hier (4.3.7)
    >
    > <h1>geen probleem</h1> <?php echo "<p>test</p>" ?>
    >
    > werkt
    >
    > <?php echo "<p>test</p>" ?>
    >
    > ditto.


    Tuurlijk werkt dat, maar je headers zijn dan wel verzonden.

    Toch?


    --
    Cheers,
    Maarten Wierda

  9. #9
    Ruud
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Jan Ehrhardt <monitor@idem.invalid> wrote:

    > Ruud in nl.internet.www.server-side (Tue, 10 May 2005 17:42:49 +0200):
    >
    > >Ik ben nieuw op het gebied van PHP en kom ergens niet uit en heb alles
    > >al uitgebrobeerd en uitgezocht, maar kom er niet uit.
    > >
    > >Ik heb aan het begin van een pagina een script staan dat er voor moet
    > >zorgen dat de eerste 15 bezoekers naar een andere pagina moeten worden
    > >doorgestuurd:
    > >
    > > <?php

    > ^^
    >
    > Als daar spaties staan gaat het al mis. Die "<" moet echt het
    > allereerste teken op je pagina zijn.
    >
    > Jan


    En dat was dus het probleem. Het werkt nu!

    ik had de code in tussen de body tags staan.

    gewijzigd staat nu als volgt:

    <?php
    $fp = fopen("counter.txt", "r+") or die("'Counter foutmelding'");
    flock($fp, LOCK_EX);
    $count = fread($fp, 10);
    rewind($fp);
    fwrite($fp, ++$count);
    flock($fp, LOCK_UN);
    fclose($fp);
    if ($count >16) {
    header("Location: http://www.frankrijkvakantieland.nl/");
    exit;
    }
    ?>
    <html>
    <head>
    <title> blablalbalbla etc </title>

    </head>
    <body>

    </html>

    Bedankt voor jullie hulp. Ik kan nu verder. Mocht ik nog tegen een
    probleem aan lopen dan meldt ik me wel weer.

    --
    Ruud Couwenhoven

    www.frankrijkvakantieland.nl
    De site over het andere Frankrijk die op CD-Rom verder gaat

  10. #10
    Ronald Klip
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Ruud schreef:
    >
    > Bedankt voor jullie hulp. Ik kan nu verder. Mocht ik nog tegen een
    > probleem aan lopen dan meldt ik me wel weer.


    Laat PHP dan eerst (tijdens het bouwen) alle fouten tonen, bijvoorbeeld
    met

    error_reporting(E_ALL);

    bovenin je script. Scheelt een hoop zoeken.

    --
    http://www.europese-grondwet.nl/ - opinie en informatie

  11. #11
    Jan Ehrhardt
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Maarten Wierda in nl.internet.www.server-side (Tue, 10 May 2005 20:51:14
    +0200):

    >John Bokma wrote:
    >
    >>>> <?php
    >>> ^^
    >>>
    >>> Als daar spaties staan gaat het al mis. Die "<" moet
    >>> echt het allereerste teken op je pagina zijn.

    >>
    >> Nooit geweten, en, geen probleem hier (4.3.7)
    >>
    >> <h1>geen probleem</h1> <?php echo "<p>test</p>" ?>
    >>
    >> werkt
    >>
    >> <?php echo "<p>test</p>" ?>
    >>
    >> ditto.

    >
    >Tuurlijk werkt dat, maar je headers zijn dan wel verzonden.
    >
    >Toch?


    Toch!

    Jan
    --
    Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

  12. #12
    John Bokma
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Maarten Wierda wrote:

    > John Bokma wrote:
    >
    >>>> <?php
    >>>
    >>> ^^
    >>>
    >>> Als daar spaties staan gaat het al mis. Die "<" moet
    >>> echt het allereerste teken op je pagina zijn.

    >>
    >> Nooit geweten, en, geen probleem hier (4.3.7)
    >>
    >> <h1>geen probleem</h1> <?php echo "<p>test</p>" ?>
    >>
    >> werkt
    >>
    >> <?php echo "<p>test</p>" ?>
    >>
    >> ditto.

    >
    > Tuurlijk werkt dat, maar je headers zijn dan wel verzonden.
    >
    > Toch?


    <?php

    header( "Location: http://castleamber.com/" );
    ?>

    Doet het hier ook perfect.

    Zelfs:

    <h1>bla bla</h1> <?php

    echo "<p>Hello, world!</p>";

    header( "Location: http://castleamber.com/" );
    ?>

    De laatste:

    HTTP/1.1 302 Found
    Date: Wed, 11 May 2005 00:49:39 GMT
    Server: Apache/1.3.31 (Win32) PHP/4.3.7
    X-Powered-By: PHP/4.3.7
    Location: http://castleamber.com/
    Connection: close
    Content-Type: text/html

    <h1>bla bla</h1> <p>Hello, world!</p>

    te zien met:

    use strict;
    use warnings;

    my $host = 'localhost';
    my $url = '/script.php';

    use IO::Socket::INET;

    my $sock = IO::Socket::INET->new(

    PeerAddr => $host,
    PeerPort => 'http(80)',
    Proto => 'tcp'
    );

    $sock->send( <<"MSG" );
    GET $url HTTP/1.0
    Host: $host

    MSG

    my $reply;
    $sock->recv( $reply, 16384 );
    print $reply;

    (NB, wellicht niet het netste script :-) ).

    Ik herinner mij vaag iets dat PHP dingen in een buffer stopt, en headers
    voorrang geeft. Ik herinner mij nog vager dat dit uit te zetten is.

    Wellicht kan de OP de output van het Perl script (aangepast voor de OP's
    situatie) posten?

    Of even: telnet localhost 80
    GET /yourscript.php HTTP/1.0
    Host: localhost

    (2 x enter na host). Als je geen virtual hosting doet, maar gewoon
    direct de boel op localhost hebt hangen, mag de Host: regel vervallen.

    --
    John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
    Website design: http://johnbokma.com/websitedesign/
    Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
    Tevreden opdrachtgevers: http://castleamber.com/testimonials.html



  13. #13
    Jan Ehrhardt
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    John Bokma in nl.internet.www.server-side (11 May 2005 00:54:45 GMT):

    [post voor de tweede keer een perl-script, terwijl de OP misschien niet
    eens de beschikking heeft over perl]

    >Ik herinner mij vaag iets dat PHP dingen in een buffer stopt, en headers
    >voorrang geeft. Ik herinner mij nog vager dat dit uit te zetten is.


    Dat herinner je dan verkeerd. Output-buffering staat standaard uit in
    PHP en moet apart aangezet te worden. Dat isover het algemeen niet aan
    te raden en werkt slecht programmeren in de hand.

    Jan
    --
    Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

  14. #14
    Branko Collin
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    ruud&marian@geenreclame_frankrijkvakantieland.nl (Ruud), you wrote on
    Tue, 10 May 2005 21:37:23 +0200:

    >> Als daar spaties staan gaat het al mis. Die "<" moet echt het
    >> allereerste teken op je pagina zijn.

    >
    >En dat was dus het probleem.


    Kreeg je geen foutmelding dan? Ik krijg normaal gesproken een melding
    dat er al headers verstuurd zijn, en dat 'ie 't niet nog eens wil
    doen.

    --
    Deze geheele aarde door ijzeren banden omspannen, met de
    stoomvaartlijnen die als draden over de zeeën zijn getrokken,
    Dezen wereldkloot in zijn tuimeling door het heelal breng ik U.
    "Grashalmen", Walt Whitman, http://www.gutenberg.org/etext/14281

  15. #15
    HoliemaN
    [PHP] header (location ...) werkt niet
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] header (location ...) werkt niet

    Ruud schreef:

    > Dat werkt helaas ook niet. Is er niet een andere manier om naar een
    > nieuwe pagina te gaan?


    Ik doe het soms wel eens zo:

    function herlaad($url){
    echo("<script>document.location.href=\"$url\"</script>");
    }

    Javascript moet idd ingeschakeld zijn, maar dat is het meestal wel

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