1. #1

    Registriert seit
    18.03.2013
    Beiträge
    481
    Thanked 264 Times in 168 Posts

    Standard [MySQL] Leere Rückgabe

    Ich habe (mal wieder) ein Problem mit dem verdammten MySQL. Da ich weiß, dass hier einige erfahrene PHP-Programmierer in Verbindung mit MySQL unterwegs sind, stell ich die Frage hier und nicht wo anders

    Ich möchte eine Homepage basteln, bei welcher die Inhalte aus einer Datenbank gelesen werden, damit das online bearbeiten vereinfacht wird. Ich habe das ganze bereits lokal sowie auf einem Webspace getestet.

    Erstmal meine Ordnerstruktur:

    - Root
    - - Forum
    - - Homepage
    - - -Data
    - - - - images


    Im Forums-Verzeichnis ist ein Forum der MyBB-Software installiert. Im Homepage-Verzeichnis liegt aktuell eine index.php, im Data-Ordner meine .tpl-Datei, welche sich später um den Aufbau und die visuelle Gestaltung der Homepage kümmern soll. Im gleichen Verzeichnis auch meine Dateien mysql.php und meine functions.php.

    Die index.php beinhaltet folgenden Code:
    PHP-Code:
    <?php
        chdir
    ('../forum/'); 
        
    define('IN_MYBB'1);
        require 
    '../forum/global.php';
        require 
    'data/functions.php';
        require 
    'data/mysql.php';

        
        
    $titel 'Startseite';
        
    $pageID getPageIDByName($titel);
        
    $pageContent getPageContent($pageID);
        
        
    $seitenlink $_SERVER['REQUEST_URI'];
        
    $internlink ' ';
        if (
    hasUserInternRights()) {
            
    $internlink '<li><a href="intern.php">Intern</a></li>';
        }
        
        if (
    isUserInGroup(9)) {
            
    $pageID 'Seitennummer: ' $pageID;
        } else {
            
    $pageID ' ';
        }

        
        echo 
    str_replace(array('<?titel?>''<?seitentext?>''<?seitenlink?>''<?internlink?>, <?pageid?>'), array($titel$pageContent$seitenlink$internlink$pageID), implode(""file("../homepage/data/style.tpl"))); 
        
    ?>
    $pageID = getPageIDByName($titel);
    Diese Funktion wird korrekt ausgeführt, bei der Startseite bekomme ich richtigerweise 1 zurück.

    $pageContent = getPageContent($pageID);
    Hier liegt warum auch immer der Fehler. Die Funktion ist in die mysql.php ausgelagert, in welcher die wichtigen Teile folgendermaßen aussehen:
    PHP-Code:
    $host 'localhost';
    $user 'root';
    $pass '';
    $database 'homepage';
        
    $sqlConnection mysql_connect($host$user$pass);
    $sql_Database mysql_select_db($database$sqlConnection);

    if (!
    function_exists(getPageContent)) {
            function 
    getPageContent($pageID) {
                
    $query "SELECT text FROM hp_sites WHERE ID=$pageID";
                
    $pageContent =  mysql_query($query$sql_Database);
                if(!
    $pageContent) {
                    die(
    'Befehl konnte nicht ausgeführt werden: <br />' mysql_error());
                }
                return 
    $pageContent;
            }
        } 
    Habe verschiedene Versionen der Abfrage probiert, schon mit `, Datenbankname usw. Alles hat nicht funktioniert.
    Ist noch nicht escaped, i know. Wichtig ist mir erst mal, dass es funktioniert. Aktuell funktioniert es aber nicht, mir wird immer nur die Ausgabe aus der die-Anweisung angezeigt ("Befehl konnte nicht ausgeführt werden:"). Komplett ohne Fehler und so.

    Bei Bedarf lass ich euch per PN die Dateien und die Datenbank zukommen. Dafür einfach per PN dann melden.



    [www.piratenpartei.de]
    "Krieg ist Frieden; Freiheit ist Sklaverei; Unwissenheit ist Stärke"

  2. #2
    Avatar von DMW007
    Registriert seit
    15.11.2011
    Beiträge
    6.080
    Thanked 9.118 Times in 2.995 Posts
    Blog Entries
    5

    Standard AW: [MySQL] Leere Rückgabe

    PHP-Code:
    $sql_Database mysql_select_db($database$sqlConnection);
    $pageContent =  mysql_query($query$sql_Database); 
    Du verwendest da einen boolischen Rückgabewert als Verbindungskennung, das kann ja schon mal nicht gut gehen :b

    PHP: mysql_select_db - Manual


  3. The Following User Says Thank You to DMW007 For This Useful Post:

    xOneDirectionx (08.04.2013)

  4. #3

    Registriert seit
    18.03.2013
    Beiträge
    481
    Thanked 264 Times in 168 Posts

    Standard AW: [MySQL] Leere Rückgabe

    Ähm ja, sowas nennt man Fail...

    Habe es jetzt zum Laufen bekommen, wenn ich die Abfrage direkt in der index.php durchfür. Ausgelagert in die mysql.php funktioniert es nicht mehr. Lese jetzt auf jeder Seite extra aus der Datenbank, ohne zentrale Funktion. Danke für deinen Hinweis DMW007.

    Vote4Close



    [www.piratenpartei.de]
    "Krieg ist Frieden; Freiheit ist Sklaverei; Unwissenheit ist Stärke"

Ähnliche Themen

  1. Antworten: 8
    Letzter Beitrag: 22.03.2014, 22:57
  2. Verschenke Leere PSC Codes
    Von Bazs im Forum Verschenke
    Antworten: 4
    Letzter Beitrag: 15.04.2013, 23:41
  3. iPhone 4 Rückgabe!
    Von Mustafa309 im Forum iOS
    Antworten: 4
    Letzter Beitrag: 01.01.2012, 23:22
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.