Probleme mit MYSQL Befehl!!!
Christopher
- php
0 Dieter Raber0 Christopher0 Dieter Raber0 Christopher0 Dieter Raber0 rajko
Grüß euch!
Kenn mich noch nicht so gut aus wie andere aber trotzdem!
Nun mein problem! Hab selbst(!) ein kleines NEWSSYSTEM geschrieben
Folgende SEITEN---
1=)--Tabelle hinzufügen
2=)--WEBINTERFACE-Eingabe
3=)--AUSGABE
Folgende Tabelle wurden angelegt!
5test
Folgende Felder wurden angelegt!
id
header
artikel
jahr
zeit
Nun mein problem! Eingabe und ausgabe funktionieren super!(http://www.design-weber.at/sql/db_ausgaben.php) Nur ich will nicht das die neuersten News unten erscheinen sondern oben!!!!!
Wie mache ich das nur!??!?
Bitte um antwort!!!
MFG WEBER CH
Hallo,
Wie lautet denn deine Query?
Dieter
Hallo,
Wie lautet denn deine Query?
Dieter
Was meinst du mit Query???? Bin neu im gebiet! SELBSTPROGRAMMIEREN MI MYSQL!!!
Thx
Hallo,
Hallo,
Wie lautet denn deine Query?
Na, sowas wie SELECT irgendwas FROM table WHERE und so weiter
Ich verstehe Dich uebrigens auch ganz gut, wenn Du weniger Ausrufe- und Fragezeichen machst.
Dieter
Ok ok! Folgendes das du dich besser auskennst!
DB-erstellen mit dem namen db-erstellen.php
++++++++++++++++++++++
<head>
<title>Tabellen erzeugen</title>
</head>
<body>
<?php
$host = "127.0.0.1";
$user = "++++";
$password = "++++";
$dbname = "10865_10865";
$tabelle ="5test";
$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "CREATE table $tabelle (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, header TEXT, artikel TEXT, jahr YEAR, zeit TIME )";
if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("Tabellenerzeugung erfolgreich.");
} else {
print ("Konnte Tabelle nicht erstellen.");
}
mysql_close ($dbverbindung);
?>
</body>
</html>
DB-eingeben mit dem Namen db-eingeben.htm
+++++++++++++++++++++++++++++++++++++
html>
<head>
<title>Dateneingabe</title>
</head>
<body>
<form action="work.php" method=post>
Überschrift <br>
<input type=text name="Array[header]" size= 50>
<br>
<br>
Artikel<textarea name="Array[artikel]" row=5 cols=40 rows="1"></textarea> <br>
Jahr<textarea name="Array[jahr]" row=5 cols=40 rows="1"></textarea><br>
Zeit<textarea name="Array[zeit]" row=5 cols=40 rows="1"></textarea><br>
<br>
<input type=submit name="SUBMIT" value="ok">
</form>
</body>
</html>
DB-eingeben2 mit dem namen work.php
<html>
<head>
<title>Daten verarbeiten</title>
</head>
<body>
<?php
$host = "127.0.0.1";
$user = "++++";
$password = "++++";
$dbname = "10865_10865";
$tabelle ="5test";
$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "INSERT into $tabelle values ('0', '$Array[header]', '$Array[artikel]', '$Array[jahr]', '$Array[zeit]')";
if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("Datenbankeintrag erfolgreich.");
} else {
print ("Es traten Probleme auf.");
}
mysql_close ($dbverbindung);
?>
</body>
DB-Ausgabe mit der ausgabe ---db-ausgabe
++++++++++++++++++++++++++++++++++++++++
<html>
<head>
<title>Inhalte ausgebeng</title>
</head>
<body>
<?php
$host = "127.0.0.1";
$user = "++++";
$password = "++++";
$dbname = "10865_10865";
$tabelle ="5test";
$dbverbindung = mysql_connect ($host, $user, $password);
$dbanfrage = "SELECT * from $tabelle";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);
while ($ausgabe = mysql_fetch_array ($result))
{
print ("$ausgabe[header]<br><br>$ausgabe[artikel]<br><br>$ausgabe[jahr]<br><br>$ausgabe[zeit]<br><hr><br>");
}
mysql_close ($dbverbindung)
?>
</body>
</html>
++++++++++++++++++++++++++++++++++++++
Hoffentlich du kennst di jetzt a bissl besser aus?!
MFG
Hallo,
Da Du offenbar noch ganz frisch bei PHP/MySQL bist, erstmal die Pflichtlektuere. Auf jeden Fall solltest Du je eine Kopie des PHP-Manuals und des MySQL-Manuals auf Deinem Rechner haben. Beides gibt's im Windows-Hilfeformat und als HTML bei http://www.php.net bzw. http://www.mysql.com. Das Windows-Hilfeformat ist ziemlich gut, wenn man denn Windows benutzt, da es durchsuchbar ist und eine vernuenftige Struktur hat.
$dbverbindung = mysql_connect ($host, $user, $password);
Es ist eine gute Idee, die Verbindung zur Datenbank und die Auswahl der Tabelle in eine eigene Datei zu schreiben und diese bei Bedarf mit include() einzubinden. Dann ist man schon mal eine Menge Routinen los, vor allem muss man nicht in jeder Datei Benutzer und Password angeben.
$dbanfrage = "CREATE table $tabelle (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, header TEXT, artikel TEXT, jahr YEAR, zeit TIME )";
Diese Konstruktion ist ein Query (Abfrage) der Datenbank, CREATE TABLE... ist SQL und nicht PHP. Ueblicherweise schreibt man die SQL-Teile der Uebersicht halber in Grossbuchstaben.
mysql_db_query ($dbname, $dbanfrage, $dbverbindung))
Hier wird die Query ausgefuehrt, schau dir im PHP-Manual mal die Befehle an, die mit mysql_ anfangen
$dbanfrage = "SELECT * from $tabelle";
Das ist die entscheidende Abfrage, wenn Du die mal direkt ins Deutsche uebersetzt, ist auch klar, was sie macht 'WAEHLE alles VON tabelle AUS'. Du willst jetzt aber erst nach Jahr, dann nach Zeit ordnen. Sollte also heissen 'WAEHLE alles VON tabelle AUS, ORDNE NACH jahr, DANN NACH zeit.
In SQL waere das "SELECT * FROM $tabelle ORDER BY jahr,zeit"
Voila, das ist die Abfrage die Du brauchst.
Also bitte mal in MySQL-Manual schauen unter ORDER BY und dabei nicht vergessen, mal einen Blick auf DESC und ASC zu werfen.
Du musst lernen zu unterscheiden, was in einem Script HTML, was PHP und was SQL ist. Wenn Du mal ein bisschen in den entsprechenden Handbuechern stoeberst, wird Dir das auch schnell klar werden.
Dieter
In SQL waere das "SELECT * FROM $tabelle ORDER BY jahr,zeit"
häng noch " DESC" dran, dann kannst Du auch die Reihenfolge umdrehen
Gruß Rajko