header???
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
ansehen
antwort
basis
befehl
datei
formen
gedacht
gel
haben
information
irgendetwas
look
rewind
schleifen
sekunde
skript
stecken
stehen
umfrage
umfrageergebnis
-
Hallo Leute
Ich habe auf meiner Seite ein Umfrage Skript eingebaut wo er allerdings folgenden Fehler beim abstimmen ausgibt:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/web200/html/home/index.php:94) in /var/www/web200/html/home/include/umfrage/view.php on line 3
Ich weiss nicht was er ganz genau meint.Das Skript schaut so aus:
<?php
if (isset($submit)) {
setcookie("vote","yes");
}
echo $question;
?>
<form action="<?php echo $PHP_SELF; ?>" method="post">
<input type="radio" name="antowrt" value="0"><?php echo $answer0; ?><br>
<input type="radio" name="antowrt" value="1"><?php echo $answer1; ?><br>
<input type="radio" name="antowrt" value="2"><?php echo $answer2; ?><br>
<input type="radio" name="antowrt" value="3"><?php echo $answer3; ?><br>
<input type="radio" name="antowrt" value="4"><?php echo $answer4; ?><br>
<input type="radio" name="antowrt" value="5"><?php echo $answer5; ?><br>
<br><br>
<?php
if (empty($submit) && empty($vote) && empty($antwort))
{
?>
<input name ="submit" type="submit" value="Vote!!">
<?php
}
else
{
echo "<p> Danke f?r ihren Vote! </p>\n";
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei="include/umfrage/look.txt";
$zeiger=fopen($datei,"r+");
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(",",$umfrage);
$umfrage[$antowrt]++;
$umfrage=$umfrage[0].",".$umfrage[1].",".$umfrage[2].",".$umfrage[3].",".$umfrage[4].",".$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
}
?>
</form>
<p>
[<a href="index.php?go=include/umfrage/look">Umfrageergebnisse ansehen</a>]
</p> -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
<?php
ob_start();
if (isset($submit)) {
setcookie('vote','yes');
}
ob_end_flush;
echo $question;
?>
<form action='<?php echo $PHP_SELF; ?>' method='post'>
<input type='radio' name='antowrt' value='0'><?php echo $answer0; ?><br>
<input type='radio' name='antowrt' value='1'><?php echo $answer1; ?><br>
<input type='radio' name='antowrt' value='2'><?php echo $answer2; ?><br>
<input type='radio' name='antowrt' value='3'><?php echo $answer3; ?><br>
<input type='radio' name='antowrt' value='4'><?php echo $answer4; ?><br>
<input type='radio' name='antowrt' value='5'><?php echo $answer5; ?><br>
<br><br>
<?php
if (empty($submit) && empty($vote) && empty($antwort))
{
?>
<input name ='submit' type='submit' value='Vote!!'>
<?php
}
else
{
echo '<p> Danke f?r ihren Vote! </p>\n';
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei='include/umfrage/look.txt';
$zeiger=fopen($datei,'r+');
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(',',$umfrage);
$umfrage[$antowrt]++;
$umfrage=$umfrage[0].','.$umfrage[1].','.$umfrage[2].','.$umfrage[3].','.$umfrage[4].','.$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
}
?>
</form>
<p>
<a href='index.php?go=include/umfrage/look'>Umfrageergebnisse ansehen</a>
</p>
?>
versuchs mal so!
ob_start; Schreibt alle Ausgaben in einen Puffer, mit ob_end_flush; wird der Puffer ausgegeben, die Pufferung angehalten und der Puffer gel?scht.
cd -
Dein Skript geht leider nicht. Hier k?nnt ihr das Skript in Aktion sehen: http://possessor.de
-
?hmm...haste davor schon irgendetwas stehen, das was auf ie seite ausgibt z.b. html code oder nen echo befehl? der cooki muss dafor genereirt werden, schreibs am besten an den anfang der ganzen datei
-
Dann ?ndere das mal so:
<?php
ob_start();
if (isset($submit)) {
setcookie('vote','yes');
}
echo $question;
?>
<form action='<?php echo $PHP_SELF; ?>' method='post'>
<input type='radio' name='antowrt' value='0'><?php echo $answer0; ?><br>
<input type='radio' name='antowrt' value='1'><?php echo $answer1; ?><br>
<input type='radio' name='antowrt' value='2'><?php echo $answer2; ?><br>
<input type='radio' name='antowrt' value='3'><?php echo $answer3; ?><br>
<input type='radio' name='antowrt' value='4'><?php echo $answer4; ?><br>
<input type='radio' name='antowrt' value='5'><?php echo $answer5; ?><br>
<br><br>
<?php
if (empty($submit) && empty($vote) && empty($antwort))
{
?>
<input name ='submit' type='submit' value='Vote!!'>
<?php
}
else
{
echo '<p> Danke f?r ihren Vote! </p>\n';
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei='include/umfrage/look.txt';
$zeiger=fopen($datei,'r+');
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(',',$umfrage);
$umfrage[$antowrt]++;
$umfrage=$umfrage[0].','.$umfrage[1].','.$umfrage[2].','.$umfrage[3].','.$umfrage[4].','.$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
}
?>
</form>
<p>
<a href='index.php?go=include/umfrage/look'>Umfrageergebnisse ansehen</a>
</p>
ob_end_flush;
?> -
jo danke jetzt gehts allerdings wollte ich es noch etwas verfeinern aber ich weiss nicht so ganz wie das geht und zwar soll er nach dieser schleife:
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei='include/umfrage/look.txt';
$zeiger=fopen($datei,'r+');
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(',',$umfrage);
$umfrage[$antwort]++;
$umfrage=$umfrage[0].','.$umfrage[1].','.$umfrage[2].','.$umfrage[3].','.$umfrage[4].','.$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
ein cookie setzen wie geht das? -
ghostrider schrieb:
jo danke jetzt gehts allerdings wollte ich es noch etwas verfeinern aber ich weiss nicht so ganz wie das geht und zwar soll er nach dieser schleife:
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei='include/umfrage/look.txt';
$zeiger=fopen($datei,'r+');
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(',',$umfrage);
$umfrage[$antwort]++;
$umfrage=$umfrage[0].','.$umfrage[1].','.$umfrage[2].','.$umfrage[3].','.$umfrage[4].','.$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
ein cookie setzen wie geht das?
Um ein Cookie zu setzen, musst Du den Befehl "setcookie();" benutzen:
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei='include/umfrage/look.txt';
$zeiger=fopen($datei,'r+');
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(',',$umfrage);
$umfrage[$antwort]++;
$umfrage=$umfrage[0].','.$umfrage[1].','.$umfrage[2].','.$umfrage[3].','.$umfrage[4].','.$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
setcookie("Name","Wert des Cookies",time() + 3600);
Dieses Cookie bleibt 1h gespeichert, bis es gel?scht wird! aktuelle Teit + 3600 Sekunden
-
Ja soweit weiss ich das auch rein von der theorie geht das ja auch aber leider muss das cookie doch vor dem ersten html befehl stehen und so geht das leider dann nicht. wie kann ich das in ein form befehl oder so stecken um das cookie dann auf der index seite erstellen zu lassen?
-
benutze dazu den Puffer:
ob_start();
// dummdidum
if (isset($submit) && isset($antwort) && empty($vote))
{
$datei='include/umfrage/look.txt';
$zeiger=fopen($datei,'r+');
$umfrage=fread($zeiger,filesize($datei));
$umfrage=explode(',',$umfrage);
$umfrage[$antwort]++;
$umfrage=$umfrage[0].','.$umfrage[1].','.$umfrage[2].','.$umfrage[3].','.$umfrage[4].','.$umfrage[5];
rewind($zeiger);
fputs($zeiger,$umfrage);
fclose($zeiger);
}
setcookie("Name","Wert des Cookies",time() + 3600);
ob_end_flush();
-
Es geht nicht wie ich es mir leider schon gedacht habe. Es kommt wieder die sache mit dem header.
-
wie ich schon gesagt habe, das geht nicht. mach doch den vote auf db basis, da sowieso net jeder die cookis akzeptiert
-
Ja aber allerdings kann ich mir das damit noch nicht so wirklich vorstellen und auch finde ich dies komplizierter. Kann man die informationen nicht irgendwie per form tag an die index datei senden?
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage