php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.10.2005, 00:06  
Gast
 
Beiträge: n/a
Standard Ausgabe wird an die falsche Stelle includet.

Hallo

Habe ein großes Problem. Ich hoffe, dass jemand etwas Zeit findet, um mir weiter zu helfen.

Hier die Miniaturausgabe des Problems. Hier funktioniert alles.
Code:
<?php

	function html_aufrufen($ausgabe) {
		// Hier wird der $inhalt gesetzt !
		$inhalt = html($ausgabe);
	}

	function html($ausgabe) {
		echo $ausgabe;
	}

	// start - durch eine Externe Datei wird action == inhalt ausgefuehrt !
	if($_GET["action"] == 'inhalt') {
		$ausgabe = "hallo";
		html_aufrufen($ausgabe);
	}
	else {
	}
?>
<html>
	<body>
		<div>
			<div><?php include($inhalt); ?></div>
		</div>
	</body>
</html>
Hier findet ihr das gleiche in groß.
Nicht erschrecken. Ich habe die ganze Quelle gepostet.
http://nopaste.php-q.net/167658

Die Funktion "html_aufrufen($ausgabe)" findet ihr in der Zeile 48
Die Funktion "html($ausgabe)" befindet sich in der Zeile 96
if($_GET["action"] == 'inhalt') befindet sich in der Zeile 330 und der Aufruf der Methode in 334
<?php include($inhalt); ?> beindet sich in der Zeile 439

Screenshot soll das Problem verdeutlichen:
http://www.aaron.de/test/frage.png

An der Stelle von "Willkommen !!!" sollen die checkboxen plaziert werden.
Die Checkboxen sind in der Miniaturausgabe "$ausgabe = "hallo";"
Die Checkboxen werden nicht innerhalb von Inhalt dargestellt.

Gruß
Aaron
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 25.10.2005, 04:31  
Gast
 
Beiträge: n/a
Standard

Hi,

dort, wo Du den Content für die Seite generierst gibst Du ihn bereits mit echo aus. Wenn Du ihn später verwenden willst, speicher ihn in einer Veriable und gib ihn per return zurück.

Dort wo der Include-Aufruf stattfindet muß dann eben stattdessen der Inhalt der Variablen ausgegen werden.
 
Alt 25.10.2005, 09:01  
Gast
 
Beiträge: n/a
Standard

Hi MarkusHausB

Wie soll ich das Ganze in eine Variable speichern ?
Stehe imom bissel auf dem Schlauch.

Gruß
Aaron

PHP-Code:
<?php
function generiere_html($fragestellung$level$naechste_frage_antworten$naechste_frage_antworten_id$anzahl_antworten) {

    
// Html Seite mit Frage + Antworten werden erzeugt
    // Frage als Klartext statt 'id_frage'
    
echo "$fragestellung";
    echo 
"<table>";
    echo 
"<form method='post' action='index.php?action=frage_anzeigen&level_auswahl=$level'>";
    
// Antworten + checkboxen werden erzeugt. 
    
for($i=0$i<=sizeof($naechste_frage_antworten)-1$i++) {
        echo 
"<tr><td><input type=checkbox name='antwort$i'></td><td>$naechste_frage_antworten[$i]</td></tr>";
        echo 
"<tr><td><input type=hidden name='id_antwort$i' value=$naechste_frage_antworten_id[$i]</td></tr>";
        echo 
"
"
;
    }
    echo 
"</table>";
    echo 
"<input type=hidden name=anzahl_antworten value=$anzahl_antworten>
"
;
    echo 
"<input type=submit value=weiter></input>";
    echo 
"</form>";
}
?>

Ich hatte das Ganze so in der Variable gespeichert:
Code:
$inhalt = generiere_html($fragestellung, $level, $naechste_frage_antworten, $naechste_frage_antworten_id, $anzahl_antworten);


"Wenn Du ihn später verwenden willst, speicher ihn in einer Veriable und gib ihn per return zurück. "

Das habe ich nicht ganz verstanden.
 
Alt 25.10.2005, 10:08  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 9.937
Zergling-new wird schon bald berühmt werden
Standard

Na anstatt

PHP-Code:
<?php
function printText()
{
  print 
"Zeile 1";
  print 
"Zeile 2";
}

// machst du einfach

function returnText()
{
  
$content "Zeile 1";
  
$content .= "Zeile 2";
  return 
$content;
}
?>
print und echo senden ja sofort an den Browser, wenn du das ganze in eine Variable packst und returnst, dann kannst du das Ding ausgeben wann du willst und nicht wann du die Funktion aufrufst.
Zergling-new ist offline  
Alt 25.10.2005, 10:16  
Gast
 
Beiträge: n/a
Standard

Hi..

muss nochmal dumm fragen.
Wie sieht das ganze bei der Schleife aus. ?!
Die Schleife macht mir noch große probleme.

PHP-Code:
<?php
    
for($i=0$i<=sizeof($naechste_frage_antworten)-1$i++) {
        echo 
"<tr><td><input type=checkbox name='antwort$i'></td><td>$naechste_frage_antworten[$i]</td></tr>";
        echo 
"<tr><td><input type=hidden name='id_antwort$i' value=$naechste_frage_antworten_id[$i]</td></tr>";
        echo 
"
"
;
    }
?>
PHP-Code:
<?php
    $html 
"$fragestellung";
    
$html "<table>";
    
$html "<form method='post' action='index.php?action=frage_anzeigen&level_auswahl=$level'>";
    
// Antworten + checkboxen werden erzeugt. 
    
for($i=0$i<=sizeof($naechste_frage_antworten)-1$i++) {
        echo 
"<tr><td><input type=checkbox name='antwort$i'></td><td>$naechste_frage_antworten[$i]</td></tr>";
        echo 
"<tr><td><input type=hidden name='id_antwort$i' value=$naechste_frage_antworten_id[$i]</td></tr>";
        echo 
"
"
;
    }
    
$html "</table>";
    
$html "<input type=hidden name=anzahl_antworten value=$anzahl_antworten>
</table>"
;
    
$html "<input type=submit value=weiter></input>";
    
$html "</form>";

return 
$html;
?>
 
Alt 25.10.2005, 10:59  
Gast
 
Beiträge: n/a
Standard

Das hier hat das Problem noch nicht lösen können.
Die Ausgabe findet immer noch oberhalb des layers statt.

PHP-Code:
<?php
$html 
"$fragestellung";
$html.= "<table>";
$html.= "<form method='post' action='index.php?action=frage_anzeigen&level_auswahl=$level'>";
    
// Antworten + checkboxen werden erzeugt. 
    
for($i=0$i<=sizeof($naechste_frage_antworten)-1$i++) {
        
$html.= "<tr><td><input type=checkbox name='antwort$i'></td><td>$naechste_frage_antworten[$i]</td></tr>";
        
$html.= "<tr><td><input type=hidden name='id_antwort$i' value=$naechste_frage_antworten_id[$i]</td></tr>";
        
$html.= "
"
;
    }

$html.= "</table>";
$html.= "<input type=hidden name=anzahl_antworten value=$anzahl_antworten>
</table>"
;
$html.= "<input type=submit value=weiter></input>";
$html.= "</form>"

return 
$html;
?>
 
Alt 25.10.2005, 13:25  
Waq
Erfahrener Benutzer
 
Registriert seit: 15.08.2004
Beiträge: 2.473
Waq
Standard

Der Beitrag wurde verschoben, wegen...
... Postings im falschen Forum. Bitte beim nächsten Mal darauf achten..

Bemerkung:
Die gestellte Frage entspricht nicht dem Wissensstand eines/einer Fortgeschrittenen. Dazu: http://www.phpfriend.de/forum/viewtopic.php?t=21515

moved to PHP - Anfänger
__________________
mod = master of disaster
Waq 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
Smarty + MySQL = immer falsche Ausgabe m0use` PHP Tipps 2006 44 21.11.2008 20:30
Ausgabe im Template System nicht an vorgsehener Stelle Kein Genie PHP-Fortgeschrittene 7 21.04.2008 23:06
falsche ausgabe von numerischen datensatz bei sql-abfrge XraYSoLo PHP Tipps 2006 5 12.09.2006 11:00
Problem mit Ausgabe bzw. Abfrage mit ORDER BY mayer Datenbanken 7 02.07.2006 21:45
Ausgabe an beliebiger Stelle PHP Tipps 2005-2 21 13.10.2005 14:00
Falsche Ausgabe bei WHERE Clause Datenbanken 8 07.10.2005 10:18
Ausgabe der Auswahlliste PHP Tipps 2005-2 6 21.09.2005 13:43
3 Tabellen verbunden -- Ausgabe in einer Spalte Datenbanken 4 06.09.2005 10:43
[Erledigt] Geteilte Ausgabe an den Browser... PHP-Fortgeschrittene 4 01.07.2005 13:07
Warum falsche numerische ausgabe bei date()? PHP Tipps 2005 5 11.03.2005 10:58
Falsche Ausgabe bei for-Schleife PHP Tipps 2005 9 09.03.2005 16:01
php datei wird an der falschen stelle includet PHP Tipps 2005 3 28.01.2005 08:45
[Erledigt] Sortierung der Ausgabe PHP-Fortgeschrittene 3 08.10.2004 09:22
preg_match_all? Falsche Ausgabe PHP Tipps 2004 4 28.09.2004 16:44
formular button linkt an interne Stelle PHP Tipps 2004 1 08.06.2004 10:02

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php html falsche stelle, php position ausgabe, \'.bloginfo(\'template_directory\').\', include php falsche stelle, php funktion falsche position, php generiert html an falscher position, echo ausgabe an der falschen stelle, php content an falscher position

Alle Zeitangaben in WEZ +1. Es ist jetzt 16:56 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.