| name |
Geschrieben am: Di 13.07.2004, 19:31
|
|
AyomRank 2 ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 19 Mitglied seit: 10.07.2004 |
Hi,
wenn man eine seite (z.B. index.php) hat, dann kann man ja darin verschiedene links definieren und dann sagen, wonach in einer mySQL Datenbank gesucht werden soll und was gezeigt werden soll, abhängig vom Link. Ich benutzte dafür zur Zeit diesen Schnippsel: # Anzeige Aerobic Montags if ($sportsart!="aerobicmontag") // der Link definiert sich als: index.php?SPORTART=AEROBICMONTAG... das möchte ich gerne mit variablen ersetzen (z.B. index.php?SPORTART=$SPORTART&WOCHENTAG=&WOCHENTAG, oder irgendwie so, damit man nicht sämtlich mögliche Links auf meine jetztige Art definieren muss. {echo""; } else { $sqlab = "select * FROM sportarten where sportart='aerobic' and wochentag=montag"; //Hier könnte ich mir nämlich auch vorstellen dass es mit variablen möglich ist. Also aus 'aerobic' wird zum Beispiel: $sportart und aus 'montag' wird $wochentag. echo"<center><br> <TABLE id=\"tablea\" cellSpacing=\"0\" cellPadding=\"1\" width=\"95%\" border=\"0\"> <tr> <td class=\"box\" align=\"center\" width=\"15%\">Sportsgren</td> <td class=\"box\" align=\"center\" width=\"20%\">Titel</td> <td class=\"box\" align=\"center\" width=\"5%\">Hold</td> <td class=\"box\" align=\"center\" width=\"20%\">Ugedag</td> <td class=\"box\" align=\"center\" width=\"15%\">Sted</td> </tr>"; $res = mysql_query($sqlab, $db); while($movie = mysql_fetch_object ($res)) { ?> <tr <? if ($options->hover=="ja") { print "onmouseover=\"this.bgColor='$options->hovercolor1'" ."\"onMouseOut=\"this.bgColor='$options->hovercolor2'\""; } ?>> <TD align="left"><? echo "<a href=javascript:detail('detail.php?id=$movie->id')> $movie->sportsgren</a>"; ?></TD> <td align="center"><? echo "$movie->titel"; ?></td> <td align="center"><? echo "$movie->hold"; ?></td> <td align="center"><? echo "$movie->ugedag"; ?></td> <TD align="center"><? echo "$movie->sted"; ?></TD></tr> <? } echo "</TABLE></center>"; } //das ist alles in Ordnung, denn das bestimmt wie die Seite aufgebaut und was angezeigt wird. Ich weiss nur nicht wie ich diese Variablen (ich hoffe man nennt sie so) definieren soll, - oder was ich schreiben muss, damit dieser Schnippsel herausfindet dass das was nach SPORTART (bei z.B. index.php?sportart=aerobic) das ist, wonach er in der Tabelle Sportarten im Feld Sportart suchen soll. Man müsste das dann auch noch erweitern so dass der Link index.php?sportart=aerobic&wochentag=montag aussieht, und der Schnippsel herausfindet dass wenn wochentag kommt, er danach in der Tabelle Sportarten im Feld Wochentag suchen soll. Danach sollen alle Einträge die der Schnippsel gefunden hat gelistet werden... Ich hoffe ihr habt verstanden wass ich meine und würde mich sehr über Antwort freuen |
![]() |
| Josh |
#2 Geschrieben am: Di 13.07.2004, 20:58 (+01:26)
|
||
![]() AyomRank 9 Gruppe: Moderatoren Beiträge: 2142 Mitglied seit: 19.10.2003 |
ok mein lieber, hier n kleiner einstieg.
das sollte weiterhelfen. -------------------- Mein letztes Projekt: Atelier-Schmuck.ch
"Das habe ich nie getan und werden es auch nie wieder tun!" :lol: |
||
![]() |
| name |
#3 Geschrieben am: Di 13.07.2004, 21:48 (+00:49)
|
|
AyomRank 2 ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 19 Mitglied seit: 10.07.2004 |
Hi, vielen Dank für deine schnelle und hilfreiche Antwort.
Das klappt auch eigentlich sehr gut, nur merkwürdiger weise definiert $currentSportart sich immer als den letzten wert vom array ($sportarten). also ich erzähl mal kurz über meinen (beziehungsweise j0sh's und wenn man dann, wie ich es mache, mit einem Kommando (oder wie das heisst, ich zeige ihn gleich) bestimmt, dass wenn die URL der index.php-Seite z.b. "index.php?sportart=aerobic" lautet, dann muss in der Tabelle Sportarten im Feld Sportart nach aerobic gesucht werden und alle Einträge aufgelistet werden. Eigentlich muss man sich ja nur das hier angucken (ausschnitt vom PHP-Script): $sportarten = array("aerobic","ballet","walking"); foreach($sportarten as $currentSportart); if ($sportart=$currentSportart) {echo"$currentSportart"; } else { $sqlab = "select * FROM sportsgrene where sportsgren='$currentSportsgren'"; echo"<center><br> <TABLE id=\"tablea\" cellSpacing=\"0\" cellPadding=\"1\" width=\"95%\" border=\"0\"> <tr> <td class=\"box\" align=\"center\" width=\"15%\">Sportsgren</td> <td class=\"box\" align=\"center\" width=\"20%\">Titel</td> <td class=\"box\" align=\"center\" width=\"5%\">Hold</td> <td class=\"box\" align=\"center\" width=\"20%\">Ugedag</td> <td class=\"box\" align=\"center\" width=\"15%\">Sted</td> </tr>"; $res = mysql_query($sqlab, $db); while($movie = mysql_fetch_object ($res)) { ?> <tr <? if ($options->hover=="ja") { print "onmouseover=\"this.bgColor='$options->hovercolor1'\"" ."onMouseOut=\"this.bgColor='$options->hovercolor2'\""; } ?>> <TD align="left"><? echo "<a href=javascript:detail('detail.php?id=$movie->id')> $movie->sportsgren</a>"; ?></TD> <td align="center"><? echo "$movie->titel"; ?></td> <td align="center"><? echo "$movie->hold"; ?></td> <td align="center"><? echo "$movie->ugedag"; ?></td> <TD align="center"><? echo "$movie->sted"; ?></TD></tr> <? } echo "</TABLE></center>"; } Ich hätte gedacht, dass jetzt in der Tabelle Sportarten im Feld sportart nach $currentSportart also der Sportart die man in der URL definiert hat gesucht wird... (oder nicht?) Ich glaube ich hab irgendetwas falsch gemacht, weiss aber nicht was... Ok, vielen Dank schonmal, cu Bjarne |
![]() |
| Josh |
#4 Geschrieben am: Di 13.07.2004, 23:19 (+01:31)
|
||||
![]() AyomRank 9 Gruppe: Moderatoren Beiträge: 2142 Mitglied seit: 19.10.2003 |
erstmal hast du den foreach falsch verstanden. dies ist eine schleife, also musst du für jeden schleifendurchgang aktionen durchführen können. dies tust du in den dazugehörigen {}: foreach($sportarten as $currentSportart) { // tue für jeden wert in $sportarten irgendetwas } so wie es in deinem code ist, wird einfach jeder wert aus $sportarten der variablen $currentSportart zugewiesen, ohne dass in einem {} body irgendwas geschehen würde. deshalb ist natürlich auch der schlussendliche wert von $currentSportart der letzte wert von $sportarten. kapiert?
dies ist ein typischer anfängerfehler. der operator "=" weist nur werte zu, es ist KEIN vergleichsoperator! um werte zu vergleichen brauchst du "==" ! in deinem falle wird das resultat immer true sein, denn php versucht, der variable $sportart den inhalt von $currentSportart zuzuweisen, was ja natürlich immer funktioniert. und da in php (wie auch in c) alles true ist, was nicht 0 ist, ist die bedingung hier immer true. also, immer "==" verwenden!!! -------------------- Mein letztes Projekt: Atelier-Schmuck.ch
"Das habe ich nie getan und werden es auch nie wieder tun!" :lol: |
||||
![]() |
| name |
#5 Geschrieben am: Di 13.07.2004, 23:46 (+00:27)
|
|
AyomRank 2 ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 19 Mitglied seit: 10.07.2004 |
Ok...
aber was muss ich jetzt machen, damit das so funktioniert wie ich meine? Also: wenn man in den InternetExplorer die index.php?sportart=aerobic&wochentag=montag eintippt, möchte ich, dass automatisch in der mySQL Datenbank "DAN" in der Tabelle "Sportarten" im Feld "Sportart" nach aerobic gesucht wird und in der selben Datenbank und Tabelle aber dem Feld "Wochentag" nach montag gesucht wird und die Einträge inklusiver andere Felder dann in der index.php-Seite gelistet werden. Wie man das mit dem auflisten macht, habe ich bereits... nur muss ich das mit det URL irgendwie hinkriegen... Oder geht das mit dem was du mir schon gegeben hast? Ich habe das auf jeden Fall leider noch nicht hingekriegt. cu Bjarne |
![]() |
| Alain_Aubert |
#6 Geschrieben am: Mi 14.07.2004, 00:18 (+00:31)
|
||||||||
|
Ayom Slave Gruppe: Admin Beiträge: 4827 Mitglied seit: 25.09.2003 |
Irgendwie mag ich deinen Code nicht lesen, sry, aber wie wärs so:
1. Superglobale Variablen, alles was über die Url kommt ist in $_GET bzw $_REQUEST
2. Querysting für sql Abfrage:
3. arbeite Variablen ein:
So hast du ohne Eingabe alle Daten und mit Eingabe jeweis die Gewünschten. Kein Gewähr. |
||||||||
![]() |
| name |
#7 Geschrieben am: Mi 14.07.2004, 09:48 (+09:29)
|
|
AyomRank 2 ![]() ![]() ![]() ![]() Gruppe: Member (aktiv) Beiträge: 19 Mitglied seit: 10.07.2004 |
JIHA! Es klappt wunderbar!
Richtig genial! YES Vielen, vielen Dank, das ist echt genial nett! Hehe, cu Bjarne |
![]() |
Thema wird von 0 Benutzer(n) gelesen (0 Gäste und 0 anonyme Benutzer)
0 Mitglieder:
« Probleme FP mit IE seit Aufspielung Patches | Programmierung Allgemein | Aktualisierung einer PHP Datei per JS »
Trackback-Url: http://www.ayom.com/track/t/2136
![]() |
![]() ![]() ![]() |
| Themen Titel | Autor | Views | Antworten | Letzte Aktion |
| Content-Links zu vergeben | telefon | 51 | 0 | Mo 1.12.2008, 16:29 |
| Suche Links zum Thema Energiesparen | panterchen | 49 | 0 | Sa 29.11.2008, 17:44 |
| Lost connection to MySQL | cr4m0 | 123 | 4 | So 23.11.2008, 14:31 |
| MySQL Frage | G.P. | 103 | 2 | Mo 17.11.2008, 15:59 |
| Suche Freelancer: Ajax, XML, PHP, MySQL | omc | 316 | 3 | Mi 12.11.2008, 18:22 |
| Einbinden vonn RSS feeds in Typo3 / MYSQL | e-card | 10934 | 5 | Di 4.11.2008, 18:36 |
| MySql Frage - ID Ändern | EuD | 120 | 2 | Di 4.11.2008, 11:09 |
| mysql query vereinfachen | Big Rob | 163 | 5 | Mo 3.11.2008, 22:40 |
| mysql Dump Städte | pl_90 | 159 | 2 | So 26.10.2008, 01:13 |
| MySQL Befehl | G.P. | 172 | 5 | Fr 24.10.2008, 15:58 |
Anzeige - [Hier werben / Mediadaten]














