|
| output buffering Fra : Ronni \(The real one~ |
Dato : 01-11-01 11:17 |
|
Hejsa ng
Jeg har et script hvori jeg skal redirecte en bruger, men får meddelsen :
Cannot add header information - headers already sent by (bla bla)
jeg ved jeg kan komme uden om problemet med ob_start() og ob_end_flush()
men findes der ikke en funktion der blot tømmer alt hvad der er "skrevet" ud
så jeg bare kan skrive noget i retning af :
tømAlt();
header(Location: muldvarp);
så jeg slipper for at skrive ob_start() og ob_end_flush() i alle mine
scripts .
Hvis ikke, er det så muligt at lave en sådanne funktion ?
Mvh
Ronni
ronni1@ofir.dk
| |
Troels Arvin (01-11-2001)
| Kommentar Fra : Troels Arvin |
Dato : 01-11-01 11:36 |
|
On Thu, 01 Nov 2001 11:16:35 +0100, "Ronni \(The real one:\)"
<ronni1@ofir.dk> wrote:
> så jeg slipper for at skrive ob_start() og ob_end_flush() i alle mine
> scripts .
Du kan altså automatisere den slags vha. PHP's
auto_prepend_file/auto_append_file konfigurations-statements, som i
øvrigt er justérbare i httpd.conf's VirtualHost-afsnit og .htaccess
(hvis man benytter PHP under Apache) samt i selve PHP-koden (vha.
ini_set()-funktionen) - ud over i PHP's globale php.ini.
--
Greetings from Troels Arvin, Copenhagen, Denmark
| |
Peter Brodersen (01-11-2001)
| Kommentar Fra : Peter Brodersen |
Dato : 01-11-01 18:51 |
|
On Thu, 1 Nov 2001 11:16:35 +0100, "Ronni \(The real one:\)"
<ronni1@ofir.dk> wrote:
>Jeg har et script hvori jeg skal redirecte en bruger, men får meddelsen :
>Cannot add header information - headers already sent by (bla bla)
Med fare for at blande mig i din problemstilling: Hvad er det, der
gør, at du absolut bliver nødt til at printe noget ud, før du sender
evt. headers?
--
- Peter Brodersen
| |
Ronni \(The real one~ (02-11-2001)
| Kommentar Fra : Ronni \(The real one~ |
Dato : 02-11-01 20:41 |
|
> Med fare for at blande mig i din problemstilling: Hvad er det, der
> gør, at du absolut bliver nødt til at printe noget ud, før du sender
> evt. headers?
Det mener jeg egentlig heller ikke at jeg gør, men jeg kan bare ikke se hvor
jeg skulle gøre det henne.
Jeg har lavet en klasse til oprettelse/redigering/sletning af brugere, og
når man har submittet fra en alm
..html fil med en form til submit.php som ser ud som følgende :
<?php
ob_start();
require("user.class");
$user = new User;
$user->table = "users";
$user->newUser($HTTP_POST_VARS);
ob_end_flush();
?>
Er det nødvendigt med ob_start() etc ellers får jeg før omtalte fejl.
newUser() er i klassen user.class og opretter den nye user, hvorefter
newUser() kalder
redirect() som også er i klassen og som skal give beskeden at nu er brugeren
oprettet.
men så får jeg før omtalte fejl.
Kan jeg komme uden om det på anden måde en ob_srtart(); ?
/Ronni
| |
Niels Andersen (02-11-2001)
| Kommentar Fra : Niels Andersen |
Dato : 02-11-01 21:08 |
|
"Ronni (The real one:)" <ronni1@ofir.dk> wrote in message
news:9rusof$7p7$1@sunsite.dk...
> Kan jeg komme uden om det på anden måde en ob_srtart(); ?
Ja, du kan løse problemet...
Når den kommer med den fejlmelding om, at der allerede er sendt noget
til klienten, så fortæller den også hvilken linje i hvilken fil output
startede på.
Hvis du ikke selv kan se det, så prøv at vise os den linje, samt nogle
linjer før.
--
Mvh.
Niels Andersen
| |
Niels Andersen (02-11-2001)
| Kommentar Fra : Niels Andersen |
Dato : 02-11-01 21:09 |
|
"Niels Andersen" <niels-usenet@myplace.dk> wrote in message
news:03DE7.5922$Ip2.244124@news010.worldonline.dk...
> > Kan jeg komme uden om det på anden måde en ob_srtart(); ?
> Ja, du kan løse problemet...
Altså som alternativ til at omgå det med ob... :)
--
Mvh.
Niels Andersen
| |
|
|