SQL Abfrage nach Variablenübergabe

Alidey

Alidey

Aktives Mitglied
Thread Starter
Dabei seit
08.10.2003
Beiträge
616
Reaktionspunkte
0
Kann mir jemand ein Script schreiben?

Morgen allerseits,

kurz vorweg:
Ich brauch dringend eure Hilfe.
Ich bin in Sachen MySQL und PHP einfach nicht so fit wie die meisten von euch...


Das Problem:
Ich habe eine Tabelle in meiner MySQL Datenbank mit 4 Spalten. id, name, headline und content. Nun übergebe ich eine Variable, am besten name. Dann soll das Script, welches ich brauche die headline und den content einfach einfügen.


Kann mir jemand weiterhelfen?
Nur wenn jemand mal nen Moment Zeit hat oder so ein Script eh schon auf dem Rechner hat... wäre echt super!


Danke...
Ali
 
Einfügen worein ?


Lace
 
Sorry klar...
Als ich hab ne driver.php in der quasi das Layout drin steckt. Nur die Inhalte befinden sich in der Datenbank. Nur soll eben, je nachdem was für ne Variable mit der driver.php übergeben wird also am besten irgendwie driver.php?name=news der passende Inhalt und die passende Überschrift in die Driver.php included werden. Also soll eine Spalte nach der Variablen durchsucht werden und dann die HEadline un der Content des gleichen Datensatzes eingefügt werden...
 
Hm ... ich glaube so richtig habe ich das noch nicht verstanden, aber ich mach einfach
mal einen Anfang:

PHP:
$result = mysql_query("SELECT `headline`, `content` FROM `NameDerTabelle` WHERE `name` = '" . $_GET['name'] . "'");
while($row = mysql_fetch_array($result))
{
    echo $row['headline'] . " - " . $row['content'];
}


Hier würde jetzt, je nach dem welchen Inhalt die Variable `name` hat, der oder die ent-
sprechenden Datensätze ausgegeben werden.

So ungefähr das, was Du brauchst? :confused:
 
Ich hab' noch mal genauer gelesen ... willst Du denn die ganze Zeit innerhalb der driver.
php bleiben? Wenn ja, musst Du das ein wenig anders machen:

PHP:
if(isset($_GET['name'])) {
// die SQL Abfrage, die ich schon gepostet habe
}


Jetzt wird die Datenbank nur ausgelesen, wenn die Variable `name` gesetzt ist, also je-
mand auf den Link geklickt hat.
 
Hi Flo, Hello Cruel World, hello all :D


Wenn du uns mal deinen Scipts zippst und zuschickst oder hier an den Thread anhängt bauen wir dir eben was. Ich mach dir sogar noch n kleines Admintool wenn du willst. Meine Arbeit ist für heute erledigt und 'ner Ommmma über die Straße geholfen hab ich auch noch nicht.


Best Wishes, Yves


@Flo:

Baller mir ma iChat per Mail rüber :D
 
Hey Yves,
super danke für das Angebot. Nur leider hab ich bisher gar kein Script... Nur ne PHP Datei in die bisher per include Text-Dateien reingeladen werden, ist aber nicht sehr kompfortabel.


Nun hab ich also ne Tabelle in meiner Datenbank.
Mit vier Spalten: id (1-11), name (Variable die übergeben wird "driver.php?name=news"), headline (die Überschrift der Seite) und content (der Inhalt der rein soll).

Nun will ich einfach, dass wenn eben beispielsweise News als Variable übergeben wird genau die Headline und der Content davon an getrennten Stellen included werden kann. Dass ich dann quasi ne Variable irgendwo hinstecken kann {headline} und {content} wo dann am Schluss der Inhalt meiner Datenbank erscheint?!

Die jetzige Seite findet ihr unter http://www.n-o-p.de/test/driver.php

Ali
 
Zuletzt bearbeitet von einem Moderator:
Yves, ich lieb dich wenn du da was zaubern kannst! Echt!
 
Hi Alidey,

wir sind uns beide (Yves und ich) noch nicht ganz klar, wie das aussehen soll. Möchtest
Du konsequent PHP und HMTL Code getrennt haben, oder reicht es, wenn die SQL Ab-
frage Inhalt und Headline an zwei Variablen übergibt, die Du dann irgendwo auf der Seite
wieder aufrufst?

Erklär doch noch mal, bitte! Weil's so schön war! :D
 
Und mach doch mal eine Skizze und poste alles was du bisher an Script hast.
 
Okay ihr 2,
hab euch mal ein Screenshot der Tabelle der Datenbank angehängt.
Außerdem die bisherige driver.php.
Mir geht es eigentlich nur darum, dass der Inhalt der HTML Seiten aus der Tabelle geladen wird, gleiches gilt für die Headline.

Ich möchte dann einfach in der driver.php schlußendlich zwei Variablen angeben können wo der Text ausgegeben werden soll. Mehr solls erstmal gar nicht sein.


Alidey
 
Na dann ist doch mein Beispiel, welches ich zu Anfang geschrieben hatte, genau das, was
Du brauchst. Du kannst natürlich auch noch schreiben:

PHP:
$result = mysql_query("SELECT `headline`, `content` FROM `NameDerTabelle` WHERE `name` = '" . $_GET['name'] . "'"); 
$row = mysql_fetch_array($result);

$headline = $row['headline'];
$content = $row['content'];

Die Variablen $headline und $content kannst Du jetzt an einer beliebigen Stelle der Da-
tei über:

PHP:
echo $headline;

oder

PHP:
echo $content;


ausgeben.
 
Hey Delmar, hab jetzt also folgenden Code:
PHP:
$host = "db77.puretec.de";
 				$user = "XXXXXXXXXX";
 				$password = "XXXXXXX";
 				$dbname = "XXXXXXXXXX";
 				
 				$dbverbindung = mysql_connect ($host, $user, $password);

				$result = mysql_query("SELECT `headline`, `content` FROM `alexanderneipp` WHERE `name` = '" . $_GET['name'] . "'"); 
 				$row = mysql_fetch_array($result); 

				$headline = $row['headline']; 
				$content = $row['content'];

 				mysql_close ($dbverbindung)
				
				php echo $headline; 
				php echo $content;

Den Code hab ich genau in der Zelle wo alles ausgegeben werden soll.
Nun hab ich das auf meinem Server, es passiert aber gar nix.
In der Adressleiste steht ganz normal driver.php?name=me.

Zu Sehen ist das unter http://www.n-o-p.de/test/driver.php


Kannst du mir helfen?
 
Zuletzt bearbeitet von einem Moderator:
Hi Alidey,

Du da ein paar Schnitzer im Code! ;)


PHP:
$host = "db77.puretec.de"; 
$user = "XXXXXXXXXX"; 
$password = "XXXXXXX"; 
$dbname = "XXXXXXXXXX"; 

mysql_connect ($host, $user, $password); 
mysql_select_db($dbname);

$result = mysql_query("SELECT `headline`, `content` FROM `alexanderneipp` WHERE `name` = '" . $_GET['name'] . "'"); 
$row = mysql_fetch_array($result); 

$headline = $row['headline']; 
$content = $row['content']; 

echo $headline; 
echo $content;


Du hast mit "mysql_connect" zwar den Datenbankserver angesprochen, bzw. zu diesem
eine Verbindung aufgebaut, hast dies aber nicht zur Datenbank gemacht. Die Datenbank
spricht man mittels "mysql_select_db" an. Das "mysql_close" kann man weglassen.

Aber bitte nicht kopieren, da es durch die Formatumwandlung der Codierung zu Fehlern
kommen kann. Also einfach abtippen! ;)
 
Danke Delmar, funktioniert alles einwandfrei!
Vielen Dank für die Hilfe...

Habs übrigens auch in anderen Foren gepostet, allerdings wollt/konnt mir da keiner so kompetent helfen! Viele leibe Grüße und nochmal vielen Dank!

ALIdey
 
Zurück
Oben Unten