![]() |
| | LinkBack | Themen-Optionen | Thema durchsuchen | Thema bewerten | Ansicht |
|
#1
| |||
| |||
Hallo ich möchte eine Suche mit Buchstaben, welche als Link anzusehen sind, in einem PHP-Skript realisieren, welches ich dann in Typo3 einbauen möchte. Das soll so funktionieren: Ich habe die Buchstaben von A-Z und die Ziffern 0-9 und wenn ich z.B. auf "A" klicke sollen alle Links die mit A beginnen aufgelistet werden. Wie greife ich denn da auf die typo3 Datenbank zu - welche Tabelle wird da angesprochen? Geändert von thomas1986 (06.12.07 um 12:22 Uhr). |
|
#2
| ||||
| ||||
| Du solltest vielleicht mal etwas konkreter werden, was du überhaupt durchsuchen willst. TYPO3 setzt sich aus ziemlich vielen Tabellen zusammen ... Gruß Peter
__________________ Erstes TYPO3camp in München vom 29.-31. August 2008. Die Anmeldung ist ab sofort offen! Mehr Infos: typo3camp-munich.mixxt.de An eagle soars, but a weasel never gets sucked into a jet engine! TYPO3 schreibt sich TYPO3! |
|
#3
| |||
| |||
| Na gut: Ich habe neben der normalen Suchbox zusätzlich eine Reihe mit Buchstaben und Ziffern. Die normale Suchbox ist die eigentliche Stichwortsuche... Die Buchstaben hingengen sind jeweils ein Link, die auf ein PHP-Skript verweisen sollen. Dieses PHP Skript soll nach Begriffen such die mit dem jeweiligen Buchstaben beginnen. Man hat z.B. A angeklickt und der Aufruf lautet dann: <a href="index.php?id=85&text=A> A </a> D.h. es wird die Typo3-Seite mit der ID 85 aufgerufen und dem Skript die Information mitgegeben, dass der Buchstabe "A" angeklickt wurde. Diese Typo-Seite enthält ein Plugin, welches das PHP-Skript einbindet. Auf die Frage was ich genau suchen will: Einfach die Seiteninhalte (z.B. einen einfachen Text). Welche Tabelle und welche Felder werden da angesprochen? Suchen möchte ich den/die Begriff(e), welche(r) mit dem angeklickten Buchstaben anfängt bzw. anfangen (also bei V z.B. "Verwaltung") Geändert von thomas1986 (06.12.07 um 13:08 Uhr). |
|
#4
| ||||
| ||||
| Zitat:
|
|
#5
| ||||
| ||||
| was hat das bitte mit AJAX zu tun? da brauchts ein simples phpskript, das 26 links produziert und fertig georg
__________________ TYPO3 3.7./3.8.X/4.0.X/4.1.1 just2b.com | Google Maps | SmoothGallery | Das grösste werbefreie TYPO3 Forum typo3.net | Content-Management-Systeme mit TYPO3 & RedDot |
|
#6
| ||||
| ||||
| Das Alphabet bekommst du ab PHP 4.1.0 so: Code: $alphabet = range('A', 'Z'); Peter
__________________ Erstes TYPO3camp in München vom 29.-31. August 2008. Die Anmeldung ist ab sofort offen! Mehr Infos: typo3camp-munich.mixxt.de An eagle soars, but a weasel never gets sucked into a jet engine! TYPO3 schreibt sich TYPO3! |
|
#7
| ||||
| ||||
| Zitat:
Sorry Aber da freut sich der Georg, dass er mir wieder einen mitgeben kann, oder ![]() |
|
#8
| ||||
| ||||
| was hat das damit zu tun.. genausowenig wie AJAX mit der Suche, deswegen mein Posting
__________________ TYPO3 3.7./3.8.X/4.0.X/4.1.1 just2b.com | Google Maps | SmoothGallery | Das grösste werbefreie TYPO3 Forum typo3.net | Content-Management-Systeme mit TYPO3 & RedDot |
|
#9
| |||
| |||
| Zitat:
Danke für den Hinweis (ich hab das nämlich mit nem Array und festen Werten gemacht...) Aber immernoch steht meine Frage aus: Welche Datenbanktabelle (ich glaub das ist die tt_content bin mir aber nicht so sicher deswegen frag ich ja) und welche Felder werden bei der MySQL-Abfrage benötigt, um einen einfachen Text, der als Content-Element auf irgendeiner Typo-Seite eingefügt wurde abzufragen? |
|
#10
| |||
| |||
| Ich hab noch eine Frage bezüglich der Datenbankabfrage: Weiß jemand welche SQL-Bedingung erfüllt sein muss, damit ein gelöschtes Content-Element (wie z.B. der Satz: Hallo ich bin ein Satz im Bereich "Normal") bei einer Abfrage nicht mit angezeigt werden soll Folgende SQL-Anweisung wurde in meinem php-Skript erstellt und ich möchte nun, dass nur die Content-Elemente (vom Typ Text) angezeigt werden, die sich auch auf den Typo-Seiten befinden(!!). Die vorher testweise eingegebenen Text-Elemente wurden gelöscht, sind aber noch in der MySQL-Datenbank drin. Diese sollten sinnvollerweise nicht angezeigt werden. Wie macht man das? Ich habe mir schon überlegt, ob es einen SUBSELECT erfordert, aber die genaue Anweisung will mir einfach nicht in den Kopf gehen... Seht euch mal hier den Code an und sagt mir eventuell was ich falsch mache: Code: if($suchbegriff != "" || $suchbegriff != null)
{
$tabelle = "tt_content"; // Tabelle in der Datenbank typo3,auf die zugegriffen wird
$start = 0;
$pro_Seite = 20; // maximale Anzahl der ausgegebenen Datensätze je Seite
//$anzahl zählt die Datensätze der Abfrage; $sql gibt die Datensätze aus:
$sql = "SELECT * FROM $tabelle t WHERE t.bodytext LIKE '%$suchbegriff%' AND t.bodytext IN (SELECT t.uid FROM $tabelle t) ORDER BY t.bodytext ASC LIMIT $start,$pro_Seite";
$anzahl = "SELECT * FROM $tabelle t WHERE t.bodytext LIKE '%$suchbegriff%'";
$abfrage = mysql_query($anzahl) or die ("Abfrage fehlgeschlagen. Fehler: ".mysql_error());
$counter = mysql_num_rows($abfrage);
// Suchergebnis ausgeben
echo "<i>Ihre Suche nach \"<strong>$suchbegriff</strong>\" ergab <strong>".$counter."</strong> Treffer:</i><br><br>";
while($row = mysql_fetch_object($abfrage))
{
$id = $row->pid;
$name = $row->bodytext;
echo "$name<br>";
}
}
else
{
echo "<strong>Geben Sie bitte einen Suchbegriff ein.";
} |
![]() |
| Themen-Optionen | Thema durchsuchen |
| Ansicht | Thema bewerten |
| |