SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 12.08.2005, 12:18:02
Steelrose Steelrose ist offline
Anfänger
 
Registriert seit: Sep 2003
Ort: Bochum
Alter: 53
Beiträge: 26
Tabellen verknüpfen und in PHP ausgeben

Hallo Leute,

wie so viele, die hier posten, werde auch ich langsam wahnsinnig. Seit 2 Tagen stöbere ich in diversen Foren und "google" mich wund ohne zählbares Ergebnis. Nun hoffe ich auf Eure Hilfe.

Ziel- und Problembeschreibung:
Zwei existierende Tabellen adressen und kompetenzen in der Datenbank studio sollen nach einer Sucheingabe durch den User miteinander verknüpft eine Query ausführen und dann ein Ergebnis zurückliefern, welches dann mittels PHP in eine HTML Seite eingebunden wird. Im konkreten Fall heißt das, dass die verschiedenen Kompetenzen aus der Tabelle kompetenzen ausgewählt werden, welche über den Suchbegriff verfügen. Danach soll dann in der Tabelle adressen geprüft werden, welche User über die Kompetenzen verfügen, welche in der Tabelle kompetenzen ausgeworfen wurden.
Die Probleme, welche sich mir nun stellen sind:
  • ist die Verknüpfung der Tabellen bzw. die Query korrekt?
  • wie lautet der PHP Code, um das Ergebnis auszugeben?

Die Tabellen:
Die Tabelle adressen hat folgende für die Aufgabe relevante Spalten:
  • id
  • name
  • kompetenzid
Die Tabelle kompetenzen hat folgende für die Aufgabe relevante Spalten:
  • id
  • art
  • suchbegriffe

Die Sucheingabe:
Über ein Formular wird der Suchbegriff folgendermaßen an das PHP-Suchscript übergeben:
HTML-Code:
<form method="post" action="suche.php">
 <input type="text" name="suchbegriff" size="20" class="input">
 <input type="submit" value="suchen" class="input">
</form>
Die Query im PHP-Suchscript:
PHP-Code:
query=mysql_query("
 SELECT
  kompetenzen.id,
  kompetenzen.art,
  kompetenzen.suchbegriffe,
  adressen.id,
  adressen.name,
  adressen.kompetenzid,
 FROM
  kompetenzen,
  adressen
 WHERE
  kompetenzen.suchbegriffe LIKE '%_POST[suchbegriff]%'
 ORDER BY
  adressen.name ASC
"
); 
Die Ausgabe im PHP-Suchscript:
PHP-Code:
while($result=mysql_fetch_array($query)) {
 
$ausgabe="
 <table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">
  <tr>
   <td align=\"left\" class=\"flowtext\">
    Kompetenz: "
.$result['kompetenzen.art']." bei ".$result['adressen.name']."
   </td>
  </tr>
 </table>
"
;

So, ich hoffe nun, dass ich die Problematik, die Aufgabe und das Ziel vernünftig und schlüssig dargestellt habe. Ich wäre Euch sehr dankbar, wenn Ihr mir da ggf. auf die Sprünge helfen könntet.

Greetz
Steelrose
__________________
Jage nichts, was Du nicht töten kannst!
Mit Zitat antworten
  #2  
Alt 12.08.2005, 13:03:05
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Tabellen verknüpfen und in PHP ausgeben

Folgende Punkte halte ich für verbesserungswürdig:
  • Du solltest angeben, über welche Spalte die beiden Tabellen miteinander verknüpft sind, da du sonst alle Kombinationen aus den Datensätzen der beiden Tabellen erhälst. Dies funktioniert z.B. mit einem INNER JOIN.
  • Benutze mysql_real_escape_string() um die Gefahr von SQL-Injections zu verringern.
  • Ich würde einen FULLTEXT-Index über die Spalte suchbegriffe in der Tabelle kompetenzen legen.
PHP-Code:
<?php
    $sql 
"SELECT
                k.id AS kompetenzid,
                k.art,
                k.suchbegriffe,
                a.id AS adressenid,
                a.name
            FROM
                kompetenzen AS k
            INNER JOIN
                adressen AS a
            ON
                k.id = a.kompetenzid
            WHERE
                MATCH(k.suchbegriffe) AGAINST('" 
mysql_real_escape_string($_POST['suchbegriffe']) . "')
            ORDER BY
                a.name"
;
?>
Übrigens mal ein Lob an dieser Stelle für deine absolut klasse Problembeschreibung.

Geändert von xabbuh (12.08.2005 um 13:03:31 Uhr)
Mit Zitat antworten
  #3  
Alt 14.08.2005, 17:43:24
Steelrose Steelrose ist offline
Anfänger
 
Registriert seit: Sep 2003
Ort: Bochum
Alter: 53
Beiträge: 26
AW: Tabellen verknüpfen und in PHP ausgeben

Vielen Dank für Deine Anregungen (und Dein Lob). Werde sie mal umsetzen und dann berichten, ob es geklappt hat und woran es gehapert hatte.

Greetz
Steelrose
__________________
Jage nichts, was Du nicht töten kannst!
Mit Zitat antworten
  #4  
Alt 16.08.2005, 03:25:13
Steelrose Steelrose ist offline
Anfänger
 
Registriert seit: Sep 2003
Ort: Bochum
Alter: 53
Beiträge: 26
AW: Tabellen verknüpfen und in PHP ausgeben

Prima, die Query hat funktioniert!!! Danke dafür!!!

Allerdings habe ich jetzt Probleme mit der PHP-Ausgabe der Query. Hast Du da evtl. noch einen Tipp, worauf ich achten sollte?

Danke im Voraus!!!
Greetz
Steelrose
__________________
Jage nichts, was Du nicht töten kannst!
Mit Zitat antworten
  #5  
Alt 16.08.2005, 10:18:17
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Tabellen verknüpfen und in PHP ausgeben

Zitat:
Zitat von Steelrose
Allerdings habe ich jetzt Probleme mit der PHP-Ausgabe der Query. Hast Du da evtl. noch einen Tipp, worauf ich achten sollte?
Wie machen sich diese Probleme denn bemerkbar?
Mit Zitat antworten
  #6  
Alt 16.08.2005, 18:08:31
Steelrose Steelrose ist offline
Anfänger
 
Registriert seit: Sep 2003
Ort: Bochum
Alter: 53
Beiträge: 26
AW: Tabellen verknüpfen und in PHP ausgeben

Sorry, es hat sich erledigt. Hatte einen Tippfehler gemacht und den natürlich als allerletztes bemerkt.
Noch einmal ein "fettes Gracias" für Deine Hilfe !!!!

Greetz
Steelrose
__________________
Jage nichts, was Du nicht töten kannst!
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySql Abfrage in Tabellen ausgeben Peer PHP Grundlagen 4 13.08.2006 18:49:07
Dateienliste ausgeben mit PHP ( nur txt ) MacLeod PHP Grundlagen 2 20.12.2004 15:00:05
Wie viele Tabellen kann man miteinander verknüpfen Sertl MySQLi/PDO/(MySQL) 11 16.01.2004 16:33:39
Daten aus 2 Tabellen verknüpfen (Newbie-Frage) LouCypher PHP für Fortgeschrittene und Experten 3 12.01.2003 19:55:28
js und php verknüpfen? andreas87 PHP für Fortgeschrittene und Experten 5 27.12.2002 20:03:45


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:09:22 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt