PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   wiw anzeige (http://www.selfphp.de/forum/showthread.php?t=8745)

joker 28.09.2004 17:52:22

wiw anzeige
 
EDIT: nun da meine idee davor zu meinem wer ist wo online script zu unbeseitbaren fehlern führte mach ich es anders.

also ich möchte mit ner switch abfrage zu einer URI den dazugehörigen text ausgeben, also wenn /index.php soll er "betrachted News übersicht" ausgeben, geht auch wunderbar, aber nun stoß ich an eine granze:

uri: /index.php?&news_id=5
zu der uri möchte ich nun zusätzlich den news titel ausgeben, aber da die id doch recht vielfaltig ist kann ich ja nicht zu jeder id einen case machen, wie mach cih es nun?

PHP-Code:

    switch ($uri) {
    case 
"/index.php"// schauen ob auf news startseite
        
echo 'betrachted News übersicht';
        break;

    case 
"/index.php?&news_id="// das geht ja nicht, da ja die id fehlt, wie mach cih das nun?
        
echo 'betrachted News übersicht';
        break;
    } 


xabbuh 28.09.2004 22:39:00

Du legst einfach eine Datenbanktabelle an und wählst dann eben den Beitrag aus, der die entsprechende news_id hat.

joker 29.09.2004 16:38:38

ähm, wie Datenbanktabelle anlegen bzw wofür? die news stehen schon in einer datenbank wenn du das meinst, es hapert ja an dem case, hier schau mal:

uri: /index.php?&news_id=5
case "/index.php?&news_id=":

case stimmt nicht mit der uri überein da ja die id fehlt, deswegen hapert es grad bei mir, und ich hab keine ahnung wie ich dies praktisch lösen könnte...

xabbuh 29.09.2004 16:45:19

Ich würde das in diesem Falle nicht über eine switch-Abfrage machen:

PHP-Code:

<?php
    $news_id 
$_GET['news_id'];
    
//  News mit eben dieser news_id aus der Datenbank holen
?>


joker 29.09.2004 16:54:36

es sollte ja eben alles in eine switch abfrage, damit ich mir die ganzen if abfragen erspare. da z.b. bei etwa 40 verschiedenden pfad angaben ( ausgenommen von den anhängseln wie bei news ) jedes mal eine if abfrage zu machen wäre sehr unübersichlicht und unpraktisch, dazu noch langsam, gibt es keine möglichkeit im case zu schauen ob dieser teil in der url einfach nur vorhanden ist, also kein direkter vergleich?

Zitat:

<?php
$news_id = $_GET['news_id'];
// News mit eben dieser news_id aus der Datenbank holen
?>
ich weis wie ich an die id rankomme mir geht ja nur um die abfrage, um dan darauf zu reagieren und dann die entsprechende selectabfrage auszuführen...

xabbuh 29.09.2004 17:06:54

Was willst du denn da mit Abfragen machen? Es wird doch immer die Variable news_id übergeben oder nicht? Welche anderen Fälle könnten denn sonst noch auftreten?

joker 29.09.2004 17:11:41

sehr viele, news war nur ein beispiel,

news: shownews.php ,archiv.php , addcoment.php?newsid=254, statistik.php
community: forum.php, gaestebuch.php, gaestebuch.php?action=add, showuser.php ...
links: disclimer.php , index.php ...

alleine das forum sollte als eispiel reichen was da für sachen noch gibt.

sind jetzt nur einige beispiele, aber das sollte reichen als bespiel...

xabbuh 29.09.2004 17:20:13

Irgendwie verstehe ich dein Problem nicht. Das sind doch alles ganz andere Dateien als index.php

joker 29.09.2004 17:38:04

also, nochmal von anfang an ;) z.b in diesem forum kann man sehen wer gerade wo online ist und was er grad auf diese seite macht
( antworten lesen us.w. )

sowas möchte ich für meine gesammte page realisieren, speicher userid, uri und zeit in einer datenbank, diese wird bei jedem seiten aufruf aktualisiert ( insert, update oder wen time älter als 15 min delete )

mit dieser tabelle lese ich aus wer online ist,
nun möchte ich noch zusätzlich ausgeben wo er sich grad aufhält und was er dort macht, dies erfahre ich ja durch die uri aus der tabelle, aber mit der uri kann ja ein normaler user nix so richtig anfangen!

also muss ich auf eine uri entsprechend reagieren, dies mache ich mit einer switch abfrage, funktioniert auch alles wunderbar, aber wenn anhängsel wie "?xyz=135" an der uri mit dran hängen gibs probleme, da ich ja nicht auf ?xyz= überprüfen kann
also z.b.
PHP-Code:

case "/index.php"?xyz=": 
    echo 'betrachted irgendetwas';
    break; 

das geht ja nicht, da ja die uri nicht übereinstimmt weil die id fehlt ( id kann ich nicht ranhängen da ich ja nicht für jede mögliche id ein case machen kann da z.b. bei userids oder newsids es sehr umfangreich wird :/ )

also das ist nun mein problem.

hoffe du verstehst mich jetzt :)

xabbuh 29.09.2004 17:44:29

Wieso speicherst du dann nicht einfach nur den Datei ohne angehängte Variablen in der Datenbank? Mögliche Variablen können ja in einer weiteren Spalte gespeichert werden.


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:44:25 Uhr.

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