php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.12.2011, 20:14  
Benutzer
 
Registriert seit: 22.04.2011
Beiträge: 59
PHP-Kenntnisse:
Anfänger
ProCoder2025 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Dynamischer-Link ohne Layout-Include auf jeweilige Unterseite

Hallo, ich weiß nicht wirklich wie ich mein Problemchen nennen soll.
Kurz die Vorgeschichte. Ich habe ein Dynamisches-Menü das soweit auch funktioniert.

Meine Links werden in einer PHP in Variablen gepackt.

PHP-Code:
<?php
    $in 
= array();

    
$in['startseite']       = "./inhalt/startseite.php";
    
$in['news']             = "./inhalt/news.php";
?>
Dann der normale Code zur Verarbeitung.

PHP-Code:
<?php

 
if(isset($_GET['cmd']) AND isset($in[$_GET['cmd']]))
 {
    include 
$in[$_GET['cmd']];
 }
 else
 {
   include 
"./inhalt/startseite.php";
 }

?>
So sieht dann ein normaler Link zum Menü aus
PHP-Code:
<a href='./index.php?cmd=startseite' class='linktext'><font color='white' size='2'>Startseite</font></a
Jeder Unterseite z.B. Seite2 wird ja dann über die Index.php automatisch das Layout ziehen ohne dass das Layout extra in Seite2 includet wird.
Und der Link sieht dann z.B. so aus example.com/index.php?cmd=seite2
Das Passt soweit alles, jetzt möchte ich meinen Inhalt aus Datenbank auf einzelne URLs verweisen. z.B. News1.

Wenn ich jetzt einen normalen Link erstellen würde, würde der z.B. so aussehen
PHP-Code:
<a href="./inhalt/news_detail.php/?seite=$newsurl\">$newstitle</a> 
Damit erreiche ich zwar das ein Dynamischer-Link erzeugt wird aber somit wird der Link ja so angezeigt news_detail.php/?seite=news1 und es wird natürlich nicht auf index.php und somit auch nicht automatisch auf das Layout zugegriffen. Das Layout includen würde ja den ganzen dynamischen Aufbau zerstören. Der Link soll also z.B. so aussehen /index.php?cmd=news_news1
Und automatisch auf die index.php zugreifen.

Habe schon verschiedene Sachen versucht, die Links und die Befehle umzuschreiben aber immer ohne Erfolg. Habe jetzt in der ersten PhP-Datei, die ich euch als erstes gezeigt habe, erstmal die Variable auf news_detail.php wieder raus genommen, nicht wundern.

Konnte mich jemand verstehen und mir vllt. helfen?
Bei Google wusste ich nicht einmal nach was ich suchen sollte. Meine Suche nach Dynamischen-Links hat mir immer nur die Sachen gezeigt die ich ja schon habe. Dynamisches-Menü und der Link der nicht das erzeugt was ich möchte.

Bin sehr dankbar über paar Tipps

Gruß Thomas
ProCoder2025 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.12.2011, 20:56  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Du musst halt die Anzeigelogik der zweiten Codebox ändern. Oder einen 2, Parameter verwenden.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 14.12.2011, 21:17  
Benutzer
 
Registriert seit: 22.04.2011
Beiträge: 59
PHP-Kenntnisse:
Anfänger
ProCoder2025 befindet sich auf einem aufstrebenden Ast
Standard

nikosch erstmal besten dank für deine Antwort.
Kannst du mir bitte kurz auf die Sprünge helfen wie ich das ganze ändere?
Weiß jetzt auf Anhieb nicht was ich da direkt ändern muss bzw. auch nicht nach was ich suchen sollte...
ProCoder2025 ist offline   Mit Zitat antworten
Alt 14.12.2011, 21:52  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Weiß jetzt auf Anhieb nicht was ich da direkt ändern muss bzw. auch nicht nach was ich suchen sollte...
Dann denk doch erstmal drüber nach. Ich habe 2 Ansätze genannt.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 14.12.2011, 23:46  
Benutzer
 
Registriert seit: 22.04.2011
Beiträge: 59
PHP-Kenntnisse:
Anfänger
ProCoder2025 befindet sich auf einem aufstrebenden Ast
Standard

Sorry nikosch aber ich verstehe es nicht.
Ich sehe einfach nicht was ich in der zweiten Code-Box also in der
PHP-Code:
<?php 

 
if(isset($_GET['cmd']) AND isset($in[$_GET['cmd']])) 
 { 
    include 
$in[$_GET['cmd']]; 
 } 
 else 
 { 
   include 
"./inhalt/startseite.php"
 } 

?>
...ändern muss.

Habe schon versucht die Parameter auf verschiedenste Art zu ändern.
z:b. so etwas
PHP-Code:
<a href='./index.php?cmd=news_detail?seite=$newsurl'>$newstitle</a
Dann habe ich das in der ersten Code-Box so geändert

PHP-Code:
<?php
    
@$newsurl $_GET['$newsurl'];

    
$in = array();

    
$in['startseite']       = "./inhalt/startseite.php";
    
$in['news']             = "./inhalt/news.php";
    
$in['news_detail?seite=$newsurl']     = "./inhalt/news_detail.php";
// An  "./inhalt/news_detail.php" müsste ich wenn es klappt dann auch noch $newsurl dranhängen ich weiß :)
?>
Habe verschiedenes versucht und der Code kommt für mich logisch vor da ich doch eigentlich die Variable übergebe dann mit Get Abfange somit dann zur URL übergebe und dann müsste doch die news_detail.php angesprochen werden.

Aber er leitet mich automatisch auf Startseite zurück, das soll ja nur passieren wenn $_GET['cmd'] und $in nicht übereinstimmen aber eigentlich stimmen die doch überein oder nicht??

Der Link an sich wird ja dadurch richtig angezeigt > index.php?cmd=news_detail?seite=news1 aber halt nicht wie gewünscht auf news_detail.php weitergeleitet damit dort die Auswertung geschehen kann.

Sorry nikosch aber ich versteh halt nicht was ich direkt ändern muss...
ProCoder2025 ist offline   Mit Zitat antworten
Alt 14.12.2011, 23:52  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Habe schon versucht die Parameter auf verschiedenste Art zu ändern.
z:b. so etwas

<a href='./index.php?cmd=news_detail?seite=$newsurl'>$newstit le</a>
Ganz genau das ist das Problem. Du kennst die Grundlagen noch gar nicht. Bspw. wie eine URL mit Parameterstring aufgebaut ist. Dementsprechend kannst DU nur rumprobieren, statt gezielt zu arbeiten. Ich werde Dir das hier nicht fertig hinschreiben, deswegen der Link nach Lerne Grundlagen | Quellensammlung

Wenn Du Malern willst, musst Du halt erst den Pinsel halten lernen. Anders wirds nichts.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 15.12.2011, 00:33  
Benutzer
 
Registriert seit: 22.04.2011
Beiträge: 59
PHP-Kenntnisse:
Anfänger
ProCoder2025 befindet sich auf einem aufstrebenden Ast
Standard

NE ich verlange ja auch nicht die fertige Lösung, das bringt mir auch nix, sondern halt nur Ansätze nach was ich suchen kann. Der Link hat mir zwar jetzt in dem Fall nicht geholfen jedoch die Aussage das ich den Parameterstring nicht verstehe...So hatte ich jetzt auch endlich mal ein Begriff nach dem ich suchen konnte. Bin jetzt auf http://tut.php-q.net/de/get.html gestoßen die das gut erklären.
Somit habe ich es jetzt wie folgt geändert
PHP-Code:
<a href='./index.php?cmd=news_detail&seite=$newsurl'>$newstitle</a
Die andere Abfrage habe ich auch nochmal geändert, da war ich ja mal total beschränkt und habe mit GET die Variable abgefragt und nicht seite...Weiß auch net wieso ich das gemacht habe . Das sollte ich ja eigentlich wissen da ich in der detail_news.php das auch richtig abfrage.
PHP-Code:
<?php
    
@$newsurl $_GET['seite'];

    
$in = array();

    
$in['startseite']       = "./inhalt/startseite.php";
    
$in['news']             = "./inhalt/news.php";
    
$in['news_detail&seite=$newsurl']     = "./inhalt/news_detail.php";

?>
So wie ich jetzt die Seite verstanden habe stimmen ja jetzt die Parameterstrings.
Verstehe jetzt also das man mit & die kommenden Parameter einfügt.
Logisch und ein Paramter ist dem Fall seite. --> Verstanden.

Den Parameter muss ich ja jetzt abfragen und das mach ich mit GET..--> habe ich auch gemacht.

Jetzt müsste doch die Abfrage eigentlich richtig sein oder bin ich total beschränkt?

Zitat:
Ganz genau das ist das Problem. Du kennst die Grundlagen noch gar nicht.
Mit den Grundlagen haste hier in dem Fall recht, mit dem Parameterstring hatte ich wirklich meine Probleme. Denn ich wusste nicht nach was ich suchen sollte...
Habe immer nur gelesen das man URL bzw. Variablen mit ? übergibt, aber nie eine richtige Erklärung dazu gefunden.
Habe immer nach URL, Link erstellen usw. bei Google und CO. gesucht...Problem ist halt, das ich nicht gleich auf die Fachbegriffe komme und wenn ich dann falsch Suche komme ich auch net auf die richtigen Seiten. Habe hier zwei Bücher vor mir liegen und die Index suche war hier erfolglos da ich ja nicht nach Parameterstring gesucht habe.

--> Jetzt werde ich Parameterstrings gleich mal fest im Gehirn abspeichern, danke ^^.

Gibt es jetzt noch irgendeine andere Sache die ich übersehen habe oder wo ich was total falsch mache? Dann würde ich dich bitten mir einfach den Fachbegriff zu nennen, wenn du so lieb wärst ) damit ich mir die Lösungen bzw. erstmal die Erklärungen selber suchen kann.

Danke für die Zeit die du hier für mich opferst

Geändert von ProCoder2025 (15.12.2011 um 00:42 Uhr).
ProCoder2025 ist offline   Mit Zitat antworten
Alt 15.12.2011, 01:00  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Jetzt müsste doch die Abfrage eigentlich richtig sein oder bin ich total beschränkt?
Was soll ich darauf jetzt antworten? Am besten das:

PHP-Code:
print_r ($_GET); 
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 15.12.2011, 01:21  
Benutzer
 
Registriert seit: 22.04.2011
Beiträge: 59
PHP-Kenntnisse:
Anfänger
ProCoder2025 befindet sich auf einem aufstrebenden Ast
Standard

nikosch du hast mir ne kurze Nacht erspart.
Ich habe mir vorgenommen erst ins Bett zu gehen wenn ich das geschafft habe und jetzt gings doch noch schneller als gedacht.

Hat geklappt...

PHP-Code:
<?php
    $newsurl 
$_GET['seite'];
    
print_r ($_GET);

    
$in = array();

    
$in['startseite']       = "./inhalt/startseite.php";
    
$in['news']             = "./inhalt/news.php";
    @
$in['news_detail']     = "./inhalt/news_detail.php";
?>
Logisch da ich ja nur cmd überprüfe und ich habe die ganze Zeit noch die Variable seite dran gehangen, da kann das ja nicht gehen...

Nochmal besten dank für deine Mühe und für die Nachhilfestunde .

Wünsche dir noch nen schönen Abend.
ProCoder2025 ist offline   Mit Zitat antworten
Alt 15.12.2011, 01:25  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Schön, dass Du es allein hinbekommen hast. Trotzdem nochmal der dringende Tipp: Mach einfach mal ein Tutorial oder zwei, auch wenn Du einige Sachen schon kannst. Vielleicht bekommst Du da noch mal eine andere Sicht auf die Dinge.

Für heute aber Gute Nacht.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
opensuse 11.3 apache2 kein php horstschulz Server, Hosting und Workstations 10 09.05.2011 12:03
[Erledigt] MySQL Link Resource in einer statischen Variablen speichern Lenki PHP-Fortgeschrittene 8 18.03.2010 16:37
Link über Echo in Java Script über Include alex9787 PHP Tipps 2009 1 31.10.2009 12:01
[Erledigt] gesamte Spalte in Array abspeichern Kotbatzen PHP Tipps 2009 23 05.09.2009 00:01
Indexdatei/Template include von PHP DarkOverride PHP Tipps 2009 4 12.06.2009 14:18
Fehler beim kompilieren von php 5.2.9 malio Server, Hosting und Workstations 11 05.06.2009 18:40
Formulare funktionieren nicht post kommt nicht an ronaldl PHP Tipps 2008 17 27.12.2008 07:46
Link / include / verständnissproblem danysahne333 PHP Tipps 2006 38 17.02.2006 13:16
include() mit normalem Link BEGINNER-L PHP Tipps 2006 5 11.02.2006 14:08
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
[Erledigt] Bilder als dynamischer Link!! PHP Tipps 2005-2 4 19.07.2005 11:35
Include per Link PHP Tipps 2004 8 25.08.2004 10:26

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php normale verlinkung include, php unterseite per link erstellen, php array linktext, unterseite in startseite includen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:39 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum