EmrahKilic Geschrieben 13. Juli 2009 Geschrieben 13. Juli 2009 (bearbeitet) Hallo Leute, ich versuche gerade eine mehrsprachige Webseite zu erstellen, nun jedoch bin ein bisschen überfordert. Ziel: Ich habe Deutsche Texte und Türkische Texte in eine Datenbank abgelegt und jetzt will ich die Texte aus der Datenbank abrufen. Den Aufruf-Befehl für die Sprache habe ich in einer anderen Datei und das habe ich auch included <?php include_once('../../kr/script/php/lang.inc.php');?> <form action="<?php echo $_SERVER['PHP_SELF']."?id=175&L=".$_GET['L']; ?>" method="post"> <input class="h_search_value" name="searchvalue" id="searchvalue" onfocus="javascript:void(document.getElementById('searchvalue').value='');" type="text" value="search" /> <input class="h_search_button" name="search" type="submit" value="search" /> </form> [/PHP] Problemfall: wenn ich das in ein echo packe, dann wird die Seite nicht mehr angezeigt. Kann mir da jemand helfen !!! Bearbeitet 13. Juli 2009 von EmrahKilic Zitieren
Amstelchen Geschrieben 13. Juli 2009 Geschrieben 13. Juli 2009 der include-pfad stimmt und wird ausgwertet? stell doch mal das error_reporting auf E_ALL, dann sollte im fehlerfall in dieser zeile ein fehler aufscheinen. steht im quelltext irgendetwas oder werden tatsächlich 0 bytes an den client ausgeliefert? was gibt ein phpinfo() aus, wenn du es an das ende der seite hinzufügst? $_GET und $_SERVER sollten hier einige inhalte liefern. s'Amstel Zitieren
EmrahKilic Geschrieben 13. Juli 2009 Autor Geschrieben 13. Juli 2009 das include ist korrekt. Ich habe das mal so gemacht. <?php include_once('fileadmin/templates/krankenreise2/script/php/lang.inc.php');?> <form action="<?php echo $_SERVER['PHP_SELF']."?id=175&L=".$_GET['L']; ?>" method="post"> <input class="h_search_value" name="searchvalue" id="searchvalue" onfocus="javascript:void(document.getElementById('searchvalue').value='');" type="text" value="search" /> <input class="h_search_button" name="search" type="submit" value="<?php echo trans(4).''.trans(12);?>" /> </form> [/PHP] dann bekomme ich diese Fehlermeldung auf dem Submit-Button: Warning</b>: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in <b>\..\..\..\..\templates\krankenreise2\script\php\lang.inc.php</b> on line <b>19</b><br /> <br /> aber der Fehler kann nicht da dran liegen, weil es in anderen Dateien keine Probleme damit gab. Zitieren
T3D Geschrieben 13. Juli 2009 Geschrieben 13. Juli 2009 Warning</b>: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in <b>\..\..\..\..\templates\krankenreise2\script\php\lang.inc.php</b> on line <b>19</b><br /> <br /> Zeig mal den SQL der in Zeile 19 der lang.inc.php ausgefuehrt wird. was mir bei deimem FORM auffaellt. du sagst method="post" haengst aber GET variablen dran, das kann gehn muss aber nicht. wenn ich das in ein echo packe, dann wird die Seite nicht mehr angezeigt. was genau packst du denn in echo? Zitieren
EmrahKilic Geschrieben 13. Juli 2009 Autor Geschrieben 13. Juli 2009 Zeile 16-20 function trans($id=0, $lang=0) { if(!$lang) $lang = $_GET['L']; $sql = 'SELECT trans FROM trans2 WHERE id='.$id.' AND lang='.$lang; $res = mysql_fetch_assoc(mysql_query($sql)); return $res['trans']; } [/PHP] was genau packst du denn in echo? ich meinte damit eigentlich das ich in den value vom Submit ein echo schreibe, sorry.... ! Zitieren
T3D Geschrieben 13. Juli 2009 Geschrieben 13. Juli 2009 ich glaube der fehler liegt an deiner funktion if(!$lang) $lang = $_GET['L']; die bedingung ist immer erfuellt wenn du keine lang uebergibst denn 0 == false wenn du nun dein Formular per POST abschickst is $_GET['L'] aber leer und deswegen kommt der SQL fehler zu stande $res = mysql_fetch_assoc(mysql_query($sql)); [/PHP] änder den code mal in: [PHP]$query = mysql_query($sql) or die("sql: " . $sql . "error: ".mysql_error()); $res = mysql_fetch_assoc($query); und ich bin mir ziemlich sicher das dein SQL nachher 'SELECT trans FROM trans2 WHERE id=43 AND lang=' so aussieht. Zitieren
EmrahKilic Geschrieben 13. Juli 2009 Autor Geschrieben 13. Juli 2009 Ich habs geschafft ! Der Fehler lag da dran, dass ich keine DB verbindung gemacht habe. Zitieren
xm22 Geschrieben 13. Juli 2009 Geschrieben 13. Juli 2009 was mir bei deimem FORM auffaellt. du sagst method="post" haengst aber GET variablen dran, das kann gehn muss aber nicht. Doch, das geht. Umgekehrt, wenn man get als Methode nimmt, _dann_ kann man keine Parameter an die URL hängen. Zitieren
T3D Geschrieben 13. Juli 2009 Geschrieben 13. Juli 2009 Doch, das geht. Umgekehrt, wenn man get als Methode nimmt, _dann_ kann man keine Parameter an die URL hängen. ah ok.. wieder was gelernt. schoen und leserlich find ich es trotzdem nicht Zitieren
EmrahKilic Geschrieben 14. Juli 2009 Autor Geschrieben 14. Juli 2009 Leute ich muss euch leider entäuschen... Ich habe heute bemerkt das der Fehler nicht nur an DB-Verbidung liegt, sondern auch an dem URL pfad. wenn ich localhost/portal aufrufe dann bekomme ich einen SQL-Bug. Aber wenn der URL Pfad so http://localhost/portal/index.php?id=122&msg=&L=3 aufgerufen wird dann funtz es 'no problemo'. hhhmmmm.... Jetz meine Frage: Wie kann ich es so machen das auch mit localhost/portal klappt.:confused: Zitieren
T3D Geschrieben 14. Juli 2009 Geschrieben 14. Juli 2009 hhhmmmm.... Jetz meine Frage: Wie kann ich es so machen das auch mit localhost/portal klappt.:confused: Les dir meinen Post oben noch einmal durch. Dadrin steht erklaert wieso du jedes mal einen SQL fehler bekommst. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.