11. Aug 2012 10:39 Fatal errorHallo :) ich versuche seit ca. 15 min. eine Fehler zu finden:
Der Fehler soll wieder in der letzten Zeile sein, deshalb vielleicht eine falsche oder fehlende klammer. Ich habe aber keinen Fehler gefunden :/ Ich poste einfach mal die function:
1 function getUserID($db) { 2 if (!is_object($db)) { 3 return false; 4 } 5 if (!($db instanceof MySQLi)) { 6 return false; 7 } 8 if (!isset($_COOKIE['UserID'], $_COOKIE['Password'])) { 9 return false; 10 } 11 $sql = 'SELECT 12 ID 13 FROM 14 User 15 WHERE 16 ID = ? AND 17 Password = ?'; 18 $stmt = $db->prepare($sql); 19 if (!$stmt) { 20 return $db->error; 21 } 22 $stmt->bind_param('is', $_COOKIE['UserID'], $_COOKIE['Password']); 23 if (!$stmt->execute()) { 24 $str = $stmt->error; 25 $stmt->close(); 26 return $str; 27 } 28 $stmt->bind_result($UserID); 29 if (!$stmt->fetch()) { 30 $stmt->close(); 31 return false; 32 } 33 $stmt->close(); 34 return $UserID; 35 } Sieht jemand einen Fehler? Danke schonmal im Vorraus :) :) :) |
11. Aug 2012 10:48 re> <code>Fatal error: Cannot redeclare getUserID() |
11. Aug 2012 11:49 sssdanke :) Ich habe jetzt einen anderen Fehler: Hier der Code:
1 <?php 2 error_reporting(E_ALL); 3 ini_set('display_errors', 1); 4 5 include 'constants.php'; 6 include 'functions.php'; 7 include 'classes.php'; 8 include 'variables.php'; 9 10 11 $db = @new MySQLi(localhost, ..., ..., ...); 12 $ret = 1; // speichert den rückgabewert von include, standardwert 1 13 if (mysqli_connect_errno()) { 14 $ret = 'Konnte keine Verbindung zu Datenbank aufbauen, MySQL meldete: '. 15 mysqli_connect_error(); 16 } else if (is_string($error = getUserID($db))) { // String, also ein MySQL 17 Fehler 18 $ret = $error; // die Fehlermeldung in $ret speichern, damit sie 19 angezeigt wird. 20 } else { 21 // Laden der Include-Datei 22 // [...] 23 } 24 25 26 $ret = 1; // speichert den rückgabewert von include, standardwert 1 27 // Laden der Include-Datei 28 /* 29 * Die Include-Datei muss eine return Anweisung enthalten mit folgenden 30 * Werten: 31 * - Bei normaler Ausführung 32 * Array('filename' => string, -- Dateiname vom Template 33 * 'data' => Array()) -- Array mit Daten für das Template 34 * - Bei einem Fehler 35 * string -- Die Fehlermeldung die angezeigt werden soll. 36 */ 37 if (isset($_GET['section'], $dateien[$_GET['section']])) { 38 if (file_exists('includes/'.$dateien[$_GET['section']])) { 39 $ret = include 'includes/'.$dateien[$_GET['section']]; 40 } else { 41 $ret = "Include-Datei konnte nicht geladen werden: 'includes/". 42 $dateien[$_GET['section']]."'"; 43 } 44 } else { 45 // default bereich laden, news 46 $ret = include 'includes/'.$dateien['news']; 47 } 48 49 // Laden des HTML-Kopfs 50 include 'templates/html_header.tpl'; // Doctype, <html>, <head>, <meta> 51 kram 52 include 'templates/html_body_tag.tpl'; // Analog auch einfach echo "<body>"; 53 include 'templates/menu.tpl'; // falls man z.B. ein Menu haben 54 möchte 55 56 // Laden der Template-Datei 57 if (is_array($ret) and isset($ret['filename'], $ret['data']) and 58 is_string($ret['filename']) and 59 is_array($ret['data'])) { 60 // Gültige Include-Datei 61 if (file_exists($file = 'templates/'.$ret['filename'])) { 62 $data = $ret['data']; // speicher die Arraydaten in eine Variable 63 $data 64 // die dann im Template verwendet werden kann. 65 include $file; 66 } else { 67 $data['msg'] = 'Templatedatei "'.$file.'" ist nicht vorhanden.'; 68 include 'templates/error.tpl'; 69 } 70 } else if (is_string($ret)) { 71 // Fehlermeldung 72 $data['msg'] = $ret; 73 include 'templates/error.tpl'; 74 } else if (1 === $ret) { 75 // return wurde vergessen 76 $data['msg'] = 'In der Include-Datei wurde die return Anweisung 77 vergessen.'; 78 include 'templates/error.tpl'; 79 } else { 80 // ein Ungültiger Return wert 81 $data['msg'] = 'Die Include-Datei hat einen ungültigen Wert 82 zurückgeliefert.'; 83 include 'templates/error.tpl'; 84 } 85 86 // HTML footer laden 87 include 'templates/html_footer.tpl'; // Zeug wie </body> und </html> 88 ?> |
11. Aug 2012 12:29 schon okhabe den Fehler jetzt gefunden :) |
12. Aug 2012 12:46 woran lagshallo würde mich interessiern worans lag |
27. Aug 2012 18:28 Kpweiß nicht mehr, hat auf einmal wieder geklappt. Habe nur irgendetwas gelöscht :) aber ich habe das auch fast aufgegeben, weil da ein Fehler nach den anderen kommt und ich kann ja spin.de nicht voll texten, weil ich php nicht gerafft bekomme :/ :-( |

