php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.07.2004, 16:36  
Neuer Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 28
Trumpfass
Trumpfass eine Nachricht über MSN schicken
Standard problem mit einbinden einer umfrage

hi,

ich hab ein problem mit meiner umfrage. eigentlich funktioniert sie ja prima (einzeln aufgerufen), aber sobald ich sie per <? include="umfrage.php"); ?> in meine seite einbinde bekomme ich folgende fehlermeldung sobald ich auf abschicken klicke:

Warning: Cannot add header information - headers already sent by (output started at c:\phpdev\private\html\main.php:7) in c:\phpdev\private\umfrage.php on line 22

wieso? woran liegt das?
hier der code meiner umfrage:

Code:
<?php
	include("connection.php");
	
	$wert=$_POST["button"];
	
	if ($_POST["Submit"]){
		$check = "SELECT ID, KEKS FROM umfrage ORDER BY ID desc LIMIT 1";
		$checkresult = mysql_query($check,$db);
		while ($data = mysql_fetch_array($checkresult)){
			$id = $data["ID"];
			$KEKS = $data["KEKS"];
		}
		if($wert=="eins"){
			$auswahl="AUSWAHL1";
		}else if($wert=="zwei"){
			$auswahl="AUSWAHL2";
		}else if($wert=="drei"){
			$auswahl="AUSWAHL3";
		}
		$eintragen = "UPDATE umfrage SET $auswahl = $auswahl+1 WHERE ID =$id";
		mysql_query($eintragen,$db);
		setcookie($KEKS, "mitgemacht",time()+2592000);
		
	}
	
	$query = "SELECT * FROM umfrage ORDER BY ID desc LIMIT 1";
	$result = mysql_query($query, $db);
	while ($data = mysql_fetch_array($result)){
		$KEKS = $data["KEKS"];
		if(isset($_COOKIE[$KEKS])) { 
			$insgesamt = $data["AUSWAHL1"]+$data["AUSWAHL2"]+$data["AUSWAHL3"];
			print "".$data["FRAGE"]."";
			print "
";
			print "
";
			print "".$data["ANTWORT1"]."";
			print "
";
			$auswahl1 = round(($data["AUSWAHL1"]*100)/$insgesamt,2);
			if ($data["AUSWAHL1"] == 1){
			print $data["AUSWAHL1"]." Stimme: ".$auswahl1."% 
<img src=\"auswahl1.gif\" height=\"10\" width=\"$auswahl1\">";
			}else{
			print $data["AUSWAHL1"]." Stimmen: ".$auswahl1."% 
<img src=\"auswahl1.gif\" height=\"10\" width=\"$auswahl1\">";
			}
			print "
";
			print "
";
			print "".$data["ANTWORT2"]."";
			print "
";
			$auswahl2 = round(($data["AUSWAHL2"]*100)/$insgesamt,2);
			if ($data["AUSWAHL2"] == 1){
			print $data["AUSWAHL2"]." Stimme: ".$auswahl2."% 
<img src=\"auswahl2.gif\" height=\"10\" width=\"$auswahl2\">";
			}else{
			print $data["AUSWAHL2"]." Stimmen: ".$auswahl2."% 
<img src=\"auswahl2.gif\" height=\"10\" width=\"$auswahl2\">";
			}
			print "
";
			print "
";
			print "".$data["ANTWORT3"]."";
			print "
";
			$auswahl3 = round(($data["AUSWAHL3"]*100)/$insgesamt, 2);
			if ($data["AUSWAHL3"] == 1){
			print $data["AUSWAHL3"]." Stimme: ".$auswahl3."% 
<img src=\"auswahl3.gif\" height=\"10\" width=\"$auswahl3\">";
			}else{
			print $data["AUSWAHL3"]." Stimmen: ".$auswahl3."% 
<img src=\"auswahl3.gif\" height=\"10\" width=\"$auswahl3\">";
			}
		}else {
			print "<form name=\"form1\" method=\"post\" action=\"\">";
 			print "<table width=\"200\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">";
			print "<tr>";
			print "<td>".$data["FRAGE"]."</td>";
			print "</tr>";
			print "<tr>";
			print "<td>
";
			print "<input type=\"radio\" name=\"button\" value=\"eins\" checked>".$data["ANTWORT1"]."</td>";
			print "</tr>";
			print "<tr>";
			print "<td>
";
			print "<input type=\"radio\" name=\"button\" value=\"zwei\">".$data["ANTWORT2"]."</td>";
			print "</tr>";
		    print "<tr>";
 		   	print "<td>
";
			print "<input type=\"radio\" name=\"button\" value=\"drei\">".$data["ANTWORT2"]."</td>";
			print "</tr>";
		    print "<tr>";
 		   	print "<td>

";
			print "
";
			print "<input type=\"submit\" name=\"Submit\" value=\"Senden\">";
 			print "</p>";
			print "</td>";
		    print "</tr>";
			print "</table>";
			print "</form>";
		}
	}
	mysql_close($db);
?>
thx & cheers,
alex
Trumpfass ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 27.07.2004, 17:25  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Trumpfass
Warning: Cannot add header information - headers already sent by (output started at c:\phpdev\private\html\main.php:7) in c:\phpdev\private\umfrage.php on line 22
vor der verwendung von header() darfst du keinerlei ausgabe haben. keine spaces und auch keinen HTML-code.
nichts.

für so etwas gibt es auch die fehlermeldungen der FAQ
http://www.dclp-faq.de/ch/ch-errors.html

und in diesem fall eben:
http://www.dclp-faq.de/q/q-fehler-header.html
imported_Ben ist offline  
Alt 27.07.2004, 18:02  
Neuer Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 28
Trumpfass
Trumpfass eine Nachricht über MSN schicken
Standard

hmm...und wie macht man das dann, dass die umfrage irgendwo auf der seite ist und der cookie erst bei klick auf "abschicken" gesendet wird? kapier ich jetzt irgendwie nicht
Trumpfass ist offline  
Alt 27.07.2004, 18:05  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Zitat von Trumpfass
hmm...und wie macht man das dann, dass die umfrage irgendwo auf der seite ist und der cookie erst bei klick auf "abschicken" gesendet wird?
das cookie muss ganz oben gesetzt werden.

also am anfang der datei, in die includet wird.

dort musst du abfragen, ob der submit-button betätigt wurde. ist dies der fall, so wird das cookie gesetzt.

hier hab ich code gepostet:
http://www.phpfriend.de/ftopic19544.html
imported_Ben ist offline  
Alt 27.07.2004, 18:57  
Neuer Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 28
Trumpfass
Trumpfass eine Nachricht über MSN schicken
Standard

erstmal danke für deine hilfe

ich habs jetzt so gemacht:
auf der seite, auf der included wird steht
Code:
<? 	if ( isset($_POST['Submit'])){ 
	
	include("../connection.php");
	
	$nachschauen = "SELECT KEKS FROM umfrage ORDER BY ID desc LIMIT 1";
	$checkcookie = mysql_query($nachschauen,$db);
	while ($data = mysql_fetch_array($checkcookie)){
		$KEKS = $data["KEKS"];
	}
	setcookie($KEKS, "mitgemacht",time()+2592000);
   	}
 ?>
und die seite, die ich einbinde is geblieben. bis auf den setcookie befehl.

jetzt setzt er den cookie brav. allerdings wird die seite nicht gleich upgedated. also es sieht zwar so aus, als würde er kurz nen reload machen, aber das script springt nicht auf die auswertung, sondern zeigt wieder die eingabemaske für die umfrage an. wenn ich die seite dann aber manuell lade, wird springt er richtig auf die statistik. any hints?

thx & cheers,
alex
Trumpfass ist offline  
Alt 28.07.2004, 13:16  
Neuer Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 28
Trumpfass
Trumpfass eine Nachricht über MSN schicken
Standard

hat wirklich niemand ne lösung dafür parat?
Trumpfass ist offline  
Alt 28.07.2004, 13:24  
Gast
 
Beiträge: n/a
Standard

Schau dir mal ob_start() an!

HTH
 
Alt 28.07.2004, 13:54  
Neuer Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 28
Trumpfass
Trumpfass eine Nachricht über MSN schicken
Standard

hmm...kapier ich jetzt nicht wirklich

mein problem is halt, dass das was ich in php kann nur aus der ähnlichen syntax von flash's actionscript ableite...
Trumpfass ist offline  
Alt 30.07.2004, 11:25  
Erfahrener Benutzer
 
Registriert seit: 08.06.2004
Beiträge: 865
RudiS
Standard

Mit ob_start() kannst du die Ausgabe puffern. Diesen Befehl verwendest du am Anfang vor deinen Ausgaben. Wenn du dann alle Befehle mit setcookie etc. abgeschlossen hast, dann schreibst du ob_end_flush(), welches dann die Ausgabe startet und die weitere Pufferung unterbindet.
Da du dich noch nicht so gut mit PHP auskennst, kann ich dir diese Links wärmstens empfehlen:
http://tut.php-q.net/
http://faq.php-q.net/
http://www.dclp-faq.de/
mfg RudiS
__________________
Kunst kommt von Können und nicht von wollen, denn sonst würde es ja Wunst heißen.
RudiS ist offline  
Alt 30.07.2004, 11:58  
Neuer Benutzer
 
Registriert seit: 22.07.2004
Beiträge: 28
Trumpfass
Trumpfass eine Nachricht über MSN schicken
Standard

hi,

ich hab das jetzt mal so geschrieben:
Code:
<? 	if ( isset($_POST['Submit'])){ 
	
	function kekssetzen(){
		include("../connection.php");
	
		$nachschauen = "SELECT KEKS FROM umfrage ORDER BY ID desc LIMIT 1";
		$checkcookie = mysql_query($nachschauen,$db);
		while ($data = mysql_fetch_array($checkcookie)){
			$KEKS = $data["KEKS"];
		}
		setcookie($KEKS, "mitgemacht",time()+2592000);
	   	}
	}
	ob_start("kekssetzen");
 ?>
und am ende (also nach /html) das hier:

Code:
 <? ob_end_flush(); ?>
so hab ich das ganze auf dieser seite "verstanden":
http://www.zend.com/manual/function.ob-start.php
so bekomme ich aber nur eine weiße seite. und wenn ich das ob_end_flush() woanders hinsetze, bringt es scheinbar auch nix. in meinen php buch steht leider auch nix näheres zu dem befehl drinnen
Trumpfass ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] GET methode - php skript in &amp;amp;lt;div Block&amp;amp;gt; einbinden Moritz PHP Tipps 2008 4 23.06.2008 14:12
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
Problem mit dem einbinden von Flash HTML, Usability und Barrierefreiheit 0 28.02.2006 13:49
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
rss/xml Feeds auf Webseite einbinden PHP Tipps 2005-2 2 29.10.2005 13:44
[Erledigt] Umfrage Problem! PHP Tipps 2005-2 5 24.09.2005 17:39
noch ein include problem PHP Tipps 2005-2 1 06.08.2005 15:57
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
PHP Umfrage mit MySQL Weyoun PHP Tipps 2005-2 10 20.06.2005 17:45
Problem beim einbinden einer PHP seite. imported_DJ Nuno HTML, Usability und Barrierefreiheit 26 11.09.2004 20:06
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34
allgemeines Problem beim einbinden von php-Scripts PHP Tipps 2004 3 11.08.2004 22:52
problem mit einer umfrage Trumpfass PHP Tipps 2004 4 22.07.2004 18:57

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
keksdata.com, umfrage einbinden php, einbetten umfrage php, alternative xml einbinden für php include

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:43 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.