tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
378
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Firestorm696 Firestorm696 ist offline Mitglied Bronze
    Registriert seit
    Feb 2005
    Beiträge
    36
    Da ist das eine Problem noch nicht mal gelöst, kommt schon das nächste:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    <?php 
    switch($section){
    case "profile1": include("profile.php?recordID=1"); break;
    case "profile2": include("profile.php?recordID=2"); break;
    case "profile3": include("profile.php?recordID=3"); break;
    default: include("news.php"); break;
    }
    ?>

    Kann mir jemand sagen warum das nicht funktioniert? Ich hab schon probiert, einen eigenen PHP-Script für die Abfolge zu machen, das hat mich schonmal stutzig gemacht, wobei das noch das mindere Problem ist. Die IDs kann ich ja Auflisten.

    Das Ganze kommt von einem Master-Detailseitensatz der in einem Include ($section) eingebunden ist. Wenn man nun beim jeweiligen Profilsatz drauf klickt, muss die Variable $recordID natürlich weitergegeben werden. Ich kann aber nicht NUR die recordID weitergeben, ich muss zuerst die section weitergeben, da die Seite sonst in _self ladet. Also geb ich mit einem click aufs Profil erstmal eine sectionID durch:

    Code :
    1
    
    <a href="index.php?section=profile<?php echo $row_members['ID']; ?>">Profil</a>

    Diese wird also an die index.php geleitet, welche die $section einbindet. Aber sie kann keine URL-Variable includen. Warum nicht? Könnt ihr mir helfen?
     

  2. #2
    Registriert seit
    Feb 2005
    Ort
    NRW
    Beiträge
    460
    Könnte das Problem so gelöst werden?

    PHP-Code:
    <?php 
        $section 
    $_GET['section'];
        switch(
    $section){
        case 
    "profile1": include("profile.php?recordID=1"); break;  
        case 
    "profile2": include("profile.php?recordID=2"); break;
        case 
    "profile3": include("profile.php?recordID=3"); break;
        default: include(
    "news.php"); break;
    }
    ?>
     

  3. #3
    Teh H4mst0R Teh H4mst0R ist offline Mitglied Bronze
    Registriert seit
    Mar 2006
    Ort
    Berlin
    Beiträge
    48
    Versuch mal das:
    Ändere den Code so ab, dass du einfach eine Variable mit dem Wert vor dem Include setzt....
    PHP-Code:
    <?php 
    switch($section){
    case 
    "profile1"$recordID=1; include("profile.php"); break;
    case 
    "profile2"$recordID=2; include("profile.php"); break;
    case 
    "profile3"$recordID=3; include("profile.php"); break;
    default: include(
    "news.php"); break;
    }
    ?>
    in der profile.php kannst du dann ganz locker mit $recordID weiterarbeiten...
    bei nem Include wird die datei quasi an der Stelle eingefügt (so als ob du da den Code aus der Datei hinschreiben würdest...)

    Wenn du nun vor dem Include irgendwelche variablen setzt, dann stehen diese in der eingebundenen Datei auch bereit.


    Du hast versucht GET-Variablen zu setzen, welche für eine Datei bereitstehen die z.B. via
    PHP-Code:
    file("http://blub.de/index.php?section=news"); 
    eingebunden wird.
    Hier könnte die index.php auf die variable $_GET['section'] zugreifen (inhalt: "news").
     

  4. #4
    diggity diggity ist offline Mitglied Gold
    Registriert seit
    Dec 2003
    Beiträge
    227
    Auszug aus dem php-Manual zur include()-Funktion:

    PHP-Code:
    // Funkt nicht; schaut nach einer lokalen Datei namens
    // 'file.php?foo=1&bar=2' im lokalen Dateisystem

    include 'file.php?foo=1&bar=2'
     

  5. #5
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Ich habe absolut nicht verstanden, was dein Problem ist, Firestorm. Könntest du bitte noch einmal mit verständlichen Worten erklären, was du zu realisieren versuchst und was genau nicht klappt.
     
    Markus Wulftange

  6. #6
    Firestorm696 Firestorm696 ist offline Mitglied Bronze
    Registriert seit
    Feb 2005
    Beiträge
    36
    @ hamster: leider so nicht...

    You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

     

  7. #7
    Teh H4mst0R Teh H4mst0R ist offline Mitglied Bronze
    Registriert seit
    Mar 2006
    Ort
    Berlin
    Beiträge
    48
    doch is so, ich weiß was ich schreibe...
    Jetzt haste mir nur ne mySQL-Fehlermeldung gepostet, weiß nicht was das zu bedeuten hat...
    evtl. haste aber nen Syntax-fehler in dem SQL-Befehl?

    jedenfalls hast du nen denkfehler beim einbinden mit includes...
    Definitiv kannst du bei nem include keine Get-Variablen übermitteln.

    include("page.php?section=test"); <-- wird und kann nicht funktionieren....
    include("page.php"); <-- würde die page.php genau an die stelle wo des include steht einfügen

    willst du jetzt in der page.php auf die get-variablen zugreifen, dann musst du die variablen VOR dem include setzen:

    $section="test"; include("page.php"); <-- jetzt kann die page.php auch auf
    $section zugreifen...

    Hier ein kleines Beispiel:
    index.php:
    PHP-Code:
    <?php
    $section
    ="news"; include("page.php");
    ?>
    page.php:
    PHP-Code:
    <?php
    echo($section);
    ?>
    Ausgabe
    HTML-Code:
    news
     

Ähnliche Themen

  1. Variable weiter geben
    Von Pott-Taucher im Forum PHP
    Antworten: 7
    Letzter Beitrag: 12.03.08, 13:25
  2. Antworten: 9
    Letzter Beitrag: 19.12.07, 09:41
  3. mehrer varialben weiter geben!
    Von Dönerman im Forum PHP
    Antworten: 5
    Letzter Beitrag: 29.09.05, 16:10
  4. Antworten: 1
    Letzter Beitrag: 16.06.05, 01:22
  5. Zeit mit Formular weiter geben
    Von themonk im Forum PHP
    Antworten: 4
    Letzter Beitrag: 03.07.04, 19:11