Seite 1 von 3
Probleme mit php
Verfasst: 30.11.2005 13:58
von JulchenNL
Hallo,
Ich habe da ein großes Problem, für euch wahrscheinlich nur ein kleines

Ich muß für die Schule eine Seite erstellen in PHP wo man meine Aufsätze die ich geschrieben habe suchen kann. Jetzt habe ich schon eine Tabelle in der Datenbank erstellt und eine Seite erstellt wo ich eine Verbindung zur Datenbank bekomme. JEtzt habe ich das folgende Problem:
Ich muß eine Seite erstellen mit einem Suchfeld wo man den Namen vom Aufsatz eingeben kann. Jetzt weiß ich nur nicht wie ich die Verbindung zur Datenbank hinbekomme mit den suchbutton.
mein zweites Problem ist:
Wie kann ich die Datenbank füllen? Am besten währe es wenn ich da auch eine kleine Seite für habe.
Ich hoffe Ihr könnt mir helfen.
Vielen Dank schonmal
Liebe Grüße aus Holland
Julia
Verfasst: 30.11.2005 14:43
von fanrpg
phpmyadmin ist ganz gut um die Datenbank zu füllen.
Code: Alles auswählen
<?php
$db = mysql_connect("host", "user", "passwort");
mysql_select_db("dbname");
$sql = "SUCHBEFEHL";
$result = mysql_query($sql);
$data = mysql_fetch_array($result);
$db = mysql_close();
?>
Und das zum Abfragen
SUCHBEFEHL musst du mit dem MySQL Befehl für suchen verwenden diesen musst du dann schreiben, da ich nicht mal deine Tabellennamen und ähnliches kenne.
Verfasst: 30.11.2005 15:12
von chriss713
So wie ich das sehe, hast Du zwei Aufgaben zu lösen:
1. Eingabe eines Suchbegriffes in ein Formular, auf "Suchen" klicken, und dann werden Dir alle passenden Aufsätze ausgegeben.
2. Die Datenbank mit den Informationen zu Deinen Aufsätzen befüllen.
Habe ich das soweit richtig verstanden?
Die grundsätzliche Vorgehensweise ist bei beiden Aufgaben die gleiche: Du erstellst ein Formular mit den entsprechenden Feldern/Elementen (bei 1.: "Suchbegriff eingeben"-Textfeld & "abschicken"-Button, bei 2.: "Aufsatz Titel"-Textfeld, "Schlagworte"-Textfeld, ... & "abschicken"-Button)
Der Formularkopf sieht so aus:
Der "action"-Parameter gibt an, welche Seite nach dem betätigen des "abschicken"-Buttons geladen wird. Auf die Werte der Formular-Elemente kannst Du dann innerhalb von script.php mittels
zugreifen und Dir die entsprechenden Datenbankabfragen zusammenbauen, die Verbindung zur DB herstellen, die Abfrage absetzen, und das Ergebnis ausgeben.
Verfasst: 30.11.2005 15:29
von JulchenNL
Erstmal vielen Dank für eure Antworten...
@fanrpg: das script was du geschrieben hast das habe ich, muß ich das in der Suchseite mit reinschreiben? ODer bleibt das eine extra datei?
@Chriss713: Stimmt das sind meine 2 Aufgaben
Die Formulare habe ich erstellt, nur ich muß ja den Button sagen das er in der Datenbank suchen soll?
Ich weiß halt nicht wie ich das ganze mit einander verbinde. ICh habe wirklich so gut wie garkeine Ahnung von PHP.
Liebe Grüße
Julia
Verfasst: 30.11.2005 15:32
von chriss713
Hab ich doch oben geschrieben: Wenn Du das Formular abschickst, wird ein Skript aufgerufen, innerhalb dieses Skripts musst Du die Verbindung zur DB herstellen und die Kommunikation abwickeln.
Verfasst: 30.11.2005 15:40
von JulchenNL
Ich habe jetzt eine Seite erstellt mit einem Suchfeld. Jetzt bekomme ich aber eine Fehlermeldung das ein Fehler ist bei connect_datenbank.php.
Was habe ich falsch gemacht?
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<form action="connect_datenbank.php" method="POST">
<p>In het veld hieronder kunt u naar verslagen zoeken. <br>
Vul een vak in of een onderwerp. <br>
<br>
<input name="zoekveld" type="text" id="zoekveld" size="75">
<input type="submit" name="Submit" value="zoeken">
</p>
<p> </p>
</form>
</body>
</html>
Verfasst: 30.11.2005 15:43
von chriss713
1. Welche Fehlermeldung genau bekommst Du?
2. Wie sieht denn Deine connect_datenbank.php aus?
3. Schau Dir bitte das mal an:
Eine PHP-Datei zum Download bereitstellen und binde die Datei dann dementsprechend ein.
Verfasst: 30.11.2005 16:01
von JulchenNL
Meine Fehlermeldung ist folgende
Parse error: parse error in /home/www/web924/html/connect_datenbank.php on line 15
Meine connect_datenbank ist:
Code: Alles auswählen
<?php
// Verbindung aufbauen, auswählen einer Datenbank
$link = mysql_connect("localhost", "web924", "kennwort")
or die("Keine Verbindung möglich!");
print "Verbindung zum Datenbankserver erfolgreich";
mysql_select_db("usr_web924_1")
or die("Auswahl der Datenbank fehlgeschlagen");
// ausführen einer SQL Anfrage
$query = "SELECT * FROM papa";
$result = mysql_query($query)
or die("Anfrage fehlgeschlagen");
// Ausgabe der Ergebnisse in HTML
print "<table border="1">\n";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
print "\t<tr>\n";
foreach ($line as $col_value) {
print "\t\t<td>$col_value</td>\n";
}
print "\t</tr>\n";
}
print "</table>\n";
// Freigeben des Resultsets
mysql_free_result($result);
// schliessen der Verbinung
mysql_close($link);
?>
Verfasst: 30.11.2005 17:59
von Sunny76
Du musst die Anführungszeichen brim Attribut im Tag "escapen", also mit einem \ versehen, also so:
Alternativ einfache Anführungszeichen:
Wenn es Dich beruhigt: mir passiert dieser im Eifer des Gefechts auch oft genug, und das, obwohl ich den Sachverhalt kenne.
Außerdem kann es je nach PHP-Version auch noch am
scheitern, da gibt's erst ab PHP Version 4, die aber eigentlich auf den meisten Servern installiert sein solte.
Verfasst: 30.11.2005 19:53
von chriss713
Sunny76 hat geschrieben:Alternativ einfache Anführungszeichen:
Das funktioniert zwar, ist aber kein valides HTML! Die Attributwerte müssen in doppelten Anführungszeichen stehen! Also die erste Variante verwenden, oder aber so: