Ergebnis 1 bis 19 von 19

Thema: Problem mit PHP/MySQL

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    a) wieso denn nicht oeffentlich? Da wirst du vermutlich schneller Hilfe bekommen (mal abgesehen davon haben hier vermutlich viele Leute keine Lust, Privat-Support zu leisten...)
    b) Wieso postest du das hier und nicht im Webentwickler-Forum?

  2. #2
    a) Weil ich ihm dann die Daten geben könnte ohne das irgendwas passiert.
    b) weils ein Programmierungsprob ist

    Aber sehs dir selber an www.esdi-page.de ich find den Fehler in der index.php leider nicht....

  3. #3
    Zitat Zitat von Underserial Beitrag anzeigen
    b) weils ein Programmierungsprob ist
    Aber ein Problem mit Website-Programmierung, wofuer das Webentwickler-Forum da ist.

    Zitat Zitat
    a) Weil ich ihm dann die Daten geben könnte ohne das irgendwas passiert.
    [...]
    Aber sehs dir selber an www.esdi-page.de ich find den Fehler in der index.php leider nicht....
    Du kannst den Sourcecode auch einfach ins Forum posten, das ist die gaengige Vorgehensweise. So musst du keine Login-Daten an irgendjemanden weitergeben, und alle koennen versuchen, dir zu helfen. Und ohne den Source helfen die Fehlermeldungen auf der Seite herzlich wenig weiter.

  4. #4
    Code:
    ".$arr[1].""; }else{ $submenu.= "".$arr[1].""; } }$res=mysql_query("SELECT * FROM menu ORDER by name");while($arr=mysql_fetch_row($res)){ if ($arr[2]==0) { $idee=$arr[0]; $resulu=mysql_query("SELECT * FROM content WHERE id = $idee ORDER BY id LIMIT 1"); $cona=mysql_fetch_array($resulu); $conit=$cona[0]; }else{ $conit=$arr[2]; } if ($sub==$arr[0]) { $menu.= "".$arr[1].""; }else{ $menu.= "".$arr[1].""; } }$res=mysql_query("SELECT * FROM box");while($arr=mysql_fetch_row($res)){ if($arr[3]==1) { $box_left.=file_get_contents("templates/box.tpl")."
    "; $box_left=str_replace("{box_title}",$arr[1],$box_left); $box_left=str_replace("{box_con}",$arr[2],$box_left); }else{ $box_right.=file_get_contents("templates/box.tpl")."
    "; $box_right=str_replace("{box_title}",$arr[1],$box_right); $box_right=str_replace("{box_con}",$arr[2],$box_right); }}$res=mysql_query("SELECT * FROM content WHERE id='$con'");$arr=mysql_fetch_array($res);$con_center=file_get_contents("templates/box.tpl");$con_center=str_replace("{box_title}",$arr[1],$con_center);$con_center=str_replace("{box_con}",$arr[2],$con_center);$con_info=file_get_contents("templates/box.tpl"); $con_info=str_replace("{box_title}",$info_name,$con_info);$con_info=str_replace("{box_con}",$info_con,$con_info);$con_menu=file_get_contents("templates/box.tpl");$con_menu=str_replace("{box_title}","Hauptmenü",$con_menu);$con_index=file_get_contents("templates/index.tpl");$con_index=str_replace("{menu}",$menu,$con_index);$con_index=str_replace("{center}",$con_center,$con_index);$con_index=str_replace("{box_right}",$box_right,$con_index);$con_index=str_replace("{box_left}",$box_left,$con_index);$con_index=str_replace("{leftmenu}",$con_menu,$con_index);$con_index=str_replace("{box_con}",$submenu,$con_index);$con_index=str_replace("{info}",$con_info,$con_index);echo $con_index;?>
    Das ist die index.php

  5. #5
    Zitat Zitat von Underserial Beitrag anzeigen
    Code:
    ".$arr[1].""; }else{ $submenu.= "".$arr[1].""; } }$res=mysql_query("SELECT * FROM menu ORDER by name");while($arr=mysql_fetch_row($res)){ if ($arr[2]==0) { $idee=$arr[0]; $resulu=mysql_query("SELECT * FROM content WHERE id = $idee ORDER BY id LIMIT 1"); $cona=mysql_fetch_array($resulu); $conit=$cona[0]; }else{ $conit=$arr[2]; } if ($sub==$arr[0]) { $menu.= "".$arr[1].""; }else{ $menu.= "".$arr[1].""; } }$res=mysql_query("SELECT * FROM box");while($arr=mysql_fetch_row($res)){ if($arr[3]==1) { $box_left.=file_get_contents("templates/box.tpl")."
    "; $box_left=str_replace("{box_title}",$arr[1],$box_left); $box_left=str_replace("{box_con}",$arr[2],$box_left); }else{ $box_right.=file_get_contents("templates/box.tpl")."
    "; $box_right=str_replace("{box_title}",$arr[1],$box_right); $box_right=str_replace("{box_con}",$arr[2],$box_right); }}$res=mysql_query("SELECT * FROM content WHERE id='$con'");$arr=mysql_fetch_array($res);$con_center=file_get_contents("templates/box.tpl");$con_center=str_replace("{box_title}",$arr[1],$con_center);$con_center=str_replace("{box_con}",$arr[2],$con_center);$con_info=file_get_contents("templates/box.tpl"); $con_info=str_replace("{box_title}",$info_name,$con_info);$con_info=str_replace("{box_con}",$info_con,$con_info);$con_menu=file_get_contents("templates/box.tpl");$con_menu=str_replace("{box_title}","Hauptmenü",$con_menu);$con_index=file_get_contents("templates/index.tpl");$con_index=str_replace("{menu}",$menu,$con_index);$con_index=str_replace("{center}",$con_center,$con_index);$con_index=str_replace("{box_right}",$box_right,$con_index);$con_index=str_replace("{box_left}",$box_left,$con_index);$con_index=str_replace("{leftmenu}",$con_menu,$con_index);$con_index=str_replace("{box_con}",$submenu,$con_index);$con_index=str_replace("{info}",$con_info,$con_index);echo $con_index;?>
    Das ist die index.php
    Das wird wohl kaum der komplette Code sein, da fehlt ja schon allein das <?php. Desweiteren waere es nett, wenn du den Code mal lesbar formatierst (und am besten in [php] statt [code] schreibst).

  6. #6
    PHP-Code:
    <?include("admin/config.inc.php");include("admin/var.inc.php");if(mysql_connect($sql_host, $sql_user, $sql_pass)){    mysql_select_db($sql_db);}else{    error("Keine DB Verbindung m&ouml;glich","Die Verbindung zur Datenbank konnte nicht hergestellt werden");}$sub=htmlspecialchars($_GET['sub']);$con=htmlspecialchars($_GET['con']);if($sub==""){    $sub=$startcat;    $con=$startpage;
    }
    if($con=="")
    {
        $con=$startpage;
    }


    $res=mysql_query("SELECT * FROM content WHERE submenu = $sub ORDER by name");
    while($arr=mysql_fetch_row($res))
    {
        if ($con==$arr[0])
        {
            $submenu.= "<a class=\"left_mark\" href=\"index.php?con=".$arr[0]."&sub=".$arr[3]."\">".$arr[1]."</a>";    
        }else{
            $submenu.= "<a class=\"left\" href=\"index.php?con=".$arr[0]."&sub=".$arr[3]."\">".$arr[1]."</a>";        }    }$res=mysql_query("SELECT * FROM menu ORDER by name");while($arr=mysql_fetch_row($res)){    if ($arr[2]==0)    {        $idee=$arr[0];        $resulu=mysql_query("SELECT * FROM content WHERE id = $idee ORDER BY id LIMIT 1");        $cona=mysql_fetch_array($resulu);        $conit=$cona[0];    }else{        $conit=$arr[2];    }    if ($sub==$arr[0])    {        $menu.= "<a class=\"top_mark\" href=\"index.php?con=".$conit."&sub=".$arr[0]."\">".$arr[1]."</a>";        }else{        $menu.= "<a class=\"top\" href=\"index.php?con=".$conit."&sub=".$arr[0]."\">".$arr[1]."</a>";        }    }$res=mysql_query("SELECT * FROM box");while($arr=mysql_fetch_row($res)){    if($arr[3]==1)    {        $box_left.=file_get_contents("templates/box.tpl")."<br>";        $box_left=str_replace("{box_title}",$arr[1],$box_left);        $box_left=str_replace("{box_con}",$arr[2],$box_left);    }else{        $box_right.=file_get_contents("templates/box.tpl")."<br>";        $box_right=str_replace("{box_title}",$arr[1],$box_right);        $box_right=str_replace("{box_con}",$arr[2],$box_right);    }}$res=mysql_query("SELECT * FROM content WHERE id='$con'");$arr=mysql_fetch_array($res);$con_center=file_get_contents("templates/box.tpl");$con_center=str_replace("{box_title}",$arr[1],$con_center);$con_center=str_replace("{box_con}",$arr[2],$con_center);$con_info=file_get_contents("templates/box.tpl");
    $con_info=str_replace("{box_title}",$info_name,$con_info);$con_info=str_replace("{box_con}",$info_con,$con_info);$con_menu=file_get_contents("templates/box.tpl");$con_menu=str_replace("{box_title}","Hauptmen&uuml;",$con_menu);$con_index=file_get_contents("templates/index.tpl");$con_index=str_replace("{menu}",$menu,$con_index);$con_index=str_replace("{center}",$con_center,$con_index);$con_index=str_replace("{box_right}",$box_right,$con_index);$con_index=str_replace("{box_left}",$box_left,$con_index);$con_index=str_replace("{leftmenu}",$con_menu,$con_index);$con_index=str_replace("{box_con}",$submenu,$con_index);$con_index=str_replace("{info}",$con_info,$con_index);echo $con_index;?>

  7. #7
    Okay, da laesst sich auf den ersten Blick nichts finden. Gib mal nach der Query die MySQL-Fehlermeldungen aus (echo mysql_error();).

  8. #8
    Der Thread hat hier wirklich nichts verloren.


    BTW, wir sollten wirklich mal Richtlinien posten, wie man Hilfeanfragen am besten formuliert, um schnell gute Antworten zu kriegen. Das würde vielleicht einiges schneller machen.


    jesus_666@multimediaxis Programmierung $ mv "HP Fehler?!" "../Webentwicklung/Problem mit PHP/MySQL"

  9. #9
    Codeformatierung ist ein essenzieller Bestandteil, du solltest mehr Wert darauf legen. Darum epmfehle ich auch <?php statt <? zu verwenden, weil <?php Konfigurationsunabhängig ist.

    Bei Daten die vom Benutzer kommen solltest du nicht nur die HTML-Sonderzeichen maskieren, sonder auch Zeichen, die der SQL-Abfrage gefährlich werden könnten. MySQL kennt daher die Funktion mysql_real_escape_string().

    Außerdem solltest du die Werte nicht einfach so in die Abfrage einbauen, sondern '' (Korrektur: auch hier sind es einfache Anführungszeichen) um die einzufügenden Werte schreiben, damit der Variableninhalt als zusammenhängend erkannt wird.

    Ich empfehle dir weiterhin immer einfache Anführungszeichen (') zu verwenden, da da einen kleinen Performanceboos mit bringt. Außerdem musst du dann nicht alle " escapen.

    Auch finde ich es nicht gerade gut, wenn du die Variablen als Teil des Strings schreibst (bezogen auf die Abfrage, an anderer Stelle scheint es zu passen). ...string' . $vari . 'string... wäre nicht so anfällig für Fehler.

    Geändert von mitaki (22.06.2007 um 22:22 Uhr)

  10. #10
    Zitat Zitat von mitaki Beitrag anzeigen
    Codeformatierung ist ein essenzieller Bestandteil, du solltest mehr Wert darauf legen. Darum epmfehle ich auch <?php statt <? zu verwenden, weil <?php Konfigurationsunabhängig ist.

    Bei Daten die vom Benutzer kommen solltest du nicht nur die HTML-Sonderzeichen maskieren, sonder auch Zeichen, die der SQL-Abfrage gefährlich werden könnten. MySQL kennt daher die Funktion mysql_real_escape_string().

    Außerdem solltest du die Werte nicht einfach so in die Abfrage einbauen, sondern '' (Korrektur: auch hier sind es einfache Anführungszeichen) um die einzufügenden Werte schreiben, damit der Variableninhalt als zusammenhängend erkannt wird.

    Ich empfehle dir weiterhin immer einfache Anführungszeichen (') zu verwenden, da da einen kleinen Performanceboos mit bringt. Außerdem musst du dann nicht alle " escapen.

    Auch finde ich es nicht gerade gut, wenn du die Variablen als Teil des Strings schreibst (bezogen auf die Abfrage, an anderer Stelle scheint es zu passen). ...string' . $vari . 'string... wäre nicht so anfällig für Fehler.
    Ok, mein Freund.

    Ich habe leider keine Ahnung von was du da redest ich hab das nicht selbst gecodet.

    Sorry.

  11. #11
    Zitat Zitat von Underserial Beitrag anzeigen
    Ok, mein Freund.

    Ich habe leider keine Ahnung von was du da redest ich hab das nicht selbst gecodet.

    Sorry.
    Und wo ist der ••••••••r, der gecodet hat?

    Versuche es mit dieser überarbeiteten Version, eventuell genügt das.
    AUch wenn nicht, die teils bessere Formatierung hilft bei der Fehlersuche.
    PHP-Code:
    <?php

        
    include('admin/config.inc.php');
        include(
    'admin/var.inc.php');

        if( 
    mysql_connect($sql_host$sql_user$sql_pass) ) {
            
    mysql_select_db($sql_db);
        } else {
            
    error('Keine DB Verbindung m&ouml;glich','Die Verbindung zur Datenbank konnte nicht hergestellt werden');
        }

        
    $sub=htmlspecialchars($_GET['sub']);
        
    $con=htmlspecialchars($_GET['con']);

        if(
    $sub=='') {
            
    $sub=$startcat;
            
    $con=$startpage;
        }

        if(
    $con=='') {
            
    $con=$startpage;
        }

        
    $res=mysql_query('SELECT * FROM content WHERE submenu = "' $sub '" ORDER by name;');

        while(
    $arr=mysql_fetch_row($res))
        {
            if (
    $con==$arr[0])
            {
                
    $submenu.= '<a class="left_mark" href="index.php?con=' $arr[0] . '&amp;sub=' $arr[3] . '">' $arr[1] . '</a>';
            }else{
                
    $submenu.= '<a class="left" href="index.php?con=' $arr[0] . '&amp;sub=' $arr[3] . '">' $arr[1] . '</a>';
            }
        }

        
    $res=mysql_query('SELECT * FROM menu ORDER by name;');

        while(
    $arr=mysql_fetch_row($res)) {
            if (
    $arr[2]==0) {
                
    $idee=$arr[0];
                
    $resulu=mysql_query('SELECT * FROM content WHERE id = ' $idee ' ORDER BY id LIMIT 1;');
                
    $cona=mysql_fetch_array($resulu);
                
    $conit=$cona[0];
            }else{
                
    $conit=$arr[2];
            }

            if (
    $sub==$arr[0]) {
                
    $menu.= '<a class="top_mark" href="index.php?con=' $conit '&amp;sub=' $arr[0] . '">' $arr[1] . '</a>';
            }else{
                
    $menu.= '<a class="top" href="index.php?con=' $conit '&amp;sub=' $arr[0] . '">' $arr[1] . '</a>';
            }
        }

        
    $res=mysql_query('SELECT * FROM box');

        while(
    $arr=mysql_fetch_row($res)) {
            if(
    $arr[3]==1) {
                
    $box_left.=file_get_contents('templates/box.tpl') . '<br>';
                
    $box_left=str_replace('{box_title}',$arr[1],$box_left);
                
    $box_left=str_replace('{box_con}',$arr[2],$box_left);
            }else{
                
    $box_right.=file_get_contents('templates/box.tpl').'<br>';
                
    $box_right=str_replace('{box_title}',$arr[1],$box_right);
                
    $box_right=str_replace('{box_con}',$arr[2],$box_right);
            }

        }

        
    $res=mysql_query('SELECT * FROM content WHERE id="' $con '";');
        
    $arr=mysql_fetch_array($res);
        
    $con_center=file_get_contents('templates/box.tpl');
        
    $con_center=str_replace('{box_title}',$arr[1],$con_center);
        
    $con_center=str_replace('{box_con}',$arr[2],$con_center);
        
    $con_info=file_get_contents('templates/box.tpl');

        
    $con_info=str_replace('{box_title}',$info_name,$con_info);
        
    $con_info=str_replace('{box_con}',$info_con,$con_info);
        
    $con_menu=file_get_contents('templates/box.tpl');
        
    $con_menu=str_replace('{box_title}','Hauptmen&uuml;',$con_menu);
        
    $con_index=file_get_contents('templates/index.tpl');
        
    $con_index=str_replace('{menu}',$menu,$con_index);
        
    $con_index=str_replace('{center}',$con_center,$con_index);
        
    $con_index=str_replace('{box_right}',$box_right,$con_index);
        
    $con_index=str_replace('{box_left}',$box_left,$con_index);
        
    $con_index=str_replace('{leftmenu}',$con_menu,$con_index);
        
    $con_index=str_replace('{box_con}',$submenu,$con_index);
        
    $con_index=str_replace('{info}',$con_info,$con_index);

        echo 
    $con_index;

    ?>

  12. #12
    Dessen Arbeit hab ich nur einmal in Anspruch genommen glaub mir ...

    Leider kommt auf der HP immer noch folgender fehler

    Code:
    Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /var/www/web182/html/index.php on line 26
    
    Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /var/www/web182/html/index.php on line 38
    
    Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /var/www/web182/html/index.php on line 57
    
    Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/web182/html/index.php on line 71

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •