ERLEDIGT
NEIN
NEIN
ANTWORTEN
11
11
ZUGRIFFE
210
210
EMPFEHLEN
-
Hallo,
mal wieder ein kleines Problem, wo ich grade vor lauter Code nicht mehr durchsteige.
Baue mir ein kleines CMS für mich selbst und bin noch ganz am Anfang.
Ich erstelle mir grade den <head>, wo ich die Metas und den Titel automatisch auslesen lassen möchte.
Klappt auch alles ganz gut, nur wenn ich das ganze ausgebe, ist die Reihenfolge ganz falsch.
Mal der Code und dann was ausgegeben wird:
PHP-Code:function pagetitel() {
$result = mysql_query("SELECT * FROM settings WHERE name='pagetitle'");
$pagetitle = mysql_fetch_array($result); $pagetitle = $pagetitle['value'];
echo $pagetitle;
}
function meta() {
$result = mysql_query("SELECT * FROM meta WHERE meta='description'");
$meta = mysql_fetch_array($result); $description = $meta['value'];
$result = mysql_query("SELECT * FROM meta WHERE meta='keywords'");
$meta = mysql_fetch_array($result); $keywords = $meta['value'];
$result = mysql_query("SELECT * FROM meta WHERE meta='author'");
$meta = mysql_fetch_array($result); $author = $meta['value'];
$result = mysql_query("SELECT * FROM meta WHERE meta='email'");
$meta = mysql_fetch_array($result); $email = $meta['value'];
echo'
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="content-language" content="de" />
<meta name="description" content="'.$description.'" />
<meta name="keywords" content="'.$keywords.'" />
<meta name="author" content="'.$author.'" />
<meta name="copyright" content="Stadler-Design, www.stadler-design.de" />
<meta name="page-type" content="Private Homepage" />
<meta http-equiv="reply-to" content="'.$email.'" />
<meta name="revisit-after" content="2 days" />
';
}
function kopf() {
echo'
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
'.meta().'
<title>'.pagetitel().'</title>
<link rel="stylesheet" href="style/sheet.css" type="text/css" />
</head>
<body>
';
}
Woran kann das liegen?HTML-Code:<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta http-equiv="content-language" content="de" /> <meta name="description" content="Dies ist die Testversion von dem CMS Stade aus dem Hause Stadler. Die derzeitige Version ist 1.0" /> <meta name="keywords" content="Stadler, Design, Yannic, Webdesign, Programmierung, CMS, Stade, 1.0" /> <meta name="author" content="Yannic Stadler" /> <meta name="copyright" content="Stadler-Design, www.stadler-design.de" /> <meta name="page-type" content="Private Homepage" /> <meta http-equiv="reply-to" content="info@yannic-stadler.de" /> <meta name="revisit-after" content="2 days" /> Das ist eine Testseite <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <link rel="stylesheet" href="style/sheet.css" type="text/css" /> </head> <body>
LG und danke schonmals
-
Die meta()-Funktion gibt die Daten auch direkt aus und nicht als Rückgabewert wieder.
Markus Wulftange
-
Hallo,
wie meinst du das?
-
Du musst die Werte mit return zurückgeben statt sie direkt mit echo auszugeben.
Markus Wulftange
-
Hallo,
ah dankeschön das klappt hervorragend
LG
-
Entweder du probierst es mit return, oder aber du gibst die Funktion mit einem eigenen echo aus also:
Ich seh gerade, du hast die return Variante benutzt die folgende Frage bleibt:PHP-Code:function kopf() {
echo'
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>';
echo''.meta().'';
echo'<title>';
echo''.pagetitel().';'
echo'</title>
<link rel="stylesheet" href="style/sheet.css" type="text/css" />
</head>
<body>
';
}
Ich habe aber mal eine Frage, hat es einen speziellen Sinn, dass du für jeden Wert einen neuen query startes? Wozu benutzt Du denn mysql_fetch_array (im übrigen solltest du mysql_fetch_assoc nehmen, da es Resourcenschonender ist).Geändert von zyro (08.07.08 um 13:10 Uhr)
-
Hmm mir fällt grade noch etwas dabei auf.
Wenn ich das ganze als Schleife (for/while) mache,
bricht das doch ab, wenn ich da jetzt PHP.net richtig verstanden habe.
Wie soll ich es denn sonst machen?
Muss doch einen neuen Query starten oder?
Wird ja jedesmal was anderes ausgelesen.
LG
-
Ich habe da auch nochmal drüber nachgedacht und ich glaube, dass das Problem bei deiner DB-Struktur ist, wie ist deine Tabelle denn aufgebaut?
-
also meine Tabelle ist in 2 spalten nur aufgebaut (meta & value)
und die verschiedenen metatags lese ich dann aus:
meta ------------- value
description -------- Das ist eine Seite
keywords ---------- Seite, Homepage, ....
author --------------- Ich
Wusste nicht wie ich das anders aufbauen sollte.
LG
-
Das ist natürlich kein Vorteilhafter aufbau...
Wenn Du die Tabelle so aufbaust:
id +++ description +++ keywords +++ author
1 Das ist eine Seite dein words das bin ich
kannst Du mir nur einem query auf alles zugreifen. also:
PHP-Code:$res = mysql_query("SELECT * FROM Tabelle");
$row= mysql_fetch_assoc($res);
// und dann ganz einfach:
$row['description']
$row['keywords']
$row['autho']
-
stimmt so rum ginge es auch!
vll sogar besser.
aber es würde mich immer noch interessieren, wie das ganze mit return in einer schleife ginge, da return ja nach erstmaliigem starten abbricht.
lg
-
Hi, so in etwa:
PHP-Code:function foo( $bar )
{
$tmp = '';
while( $bedingung )
{
$tmp .= 'irgendwas';
}
return $tmp;
}
mfg
--------------------------------------------------------------------------------
Kein Support via PN, Email, ICQ, Brieftaube oder Flaschenpost!
Besucht den tutorials.de-Chat | Anleitung
RTFM - PHP-Handbuch - MySql Handbuch
--------------------------------------------------------------------------------
Surftipp...Der Postillon
--------------------------------------------------------------------------------
Signatur v2.2
Ähnliche Themen
-
[VB 2008] Falsche Ausgabe bei XML-Auslese
Von OnkelTimon im Forum .NET DatenverwaltungAntworten: 0Letzter Beitrag: 09.02.10, 11:05 -
Falsche Ausgabe
Von HackTack10 im Forum Relationale DatenbanksystemeAntworten: 1Letzter Beitrag: 21.10.05, 14:57 -
falsche ausgabe aus XML datei
Von hohly im Forum PHPAntworten: 1Letzter Beitrag: 21.10.05, 04:20 -
Falsche Ausgabe mit PEAR::DB
Von StefanR im Forum PHPAntworten: 1Letzter Beitrag: 11.11.04, 05:05 -
Firefox macht falsche ausgabe
Von draig im Forum HTML & XHTMLAntworten: 2Letzter Beitrag: 28.07.04, 14:44





Zitieren
Login






[PHP] [Codeschnipsel] ImageColor aus HTML-Farbcodierung erstellen