Autor | Zpráva | ||
---|---|---|---|
Vilak Profil |
#1 · Zasláno: 26. 7. 2016, 18:42:58
Zdarec. Mám dokument index.php, který začíná takto:
<?php include "include/session.php"; include "include/db/db.php"; ?> <!DOCTYPE html> Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /data/web/virtuals/138112/virtual/www/index.php:1) in /data/web/virtuals/138112/virtual/www/include/session.php on line 2 session.php: <?php session_start(); if (isset($_GET['logout']) && $_GET['logout'] == "odhlasit_se") { @$login = $_SESSION['login']; $stmt = $conn->prepare("UPDATE `users` SET `last_login` = CURRENT_TIMESTAMP WHERE `login` = '$login'"); $stmt->execute(); $_SESSION['login'] = ''; $_SESSION['last_login'] = ''; unset($_SESSION['login']); unset($login); unset($_SESSION['last_login']); unset($last_login); } ?> db.php: <?php $dbname = "xxx"; $servername = "xxx"; $username = "xxx"; $password = "xxx"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOExcetion $e) { echo "Připojení selhalo: " . $e->getMessage(); } ?> Kde je chyba? Předem děkuji za odpovědi. |
||
Radek9 Profil |
#2 · Zasláno: 26. 7. 2016, 18:52:05
Vilak:
Zkontroluj, že na začátku těch souborů není BOM. PHP s tím občas mívá problém. |
||
Vilak Profil |
#3 · Zasláno: 26. 7. 2016, 19:13:19
To je co? Jak to mám zkontrolovat?
|
||
Davex Profil |
#4 · Zasláno: 26. 7. 2016, 20:06:35
Vilak:
„To je co?“ Jak už jsi určitě našel sám, tak je to popsané v nejčastějších potížích s PHP, protože se na to pořád někdo ptal. Kdybys to náhodou přehlédl, tak chyba „headers already sent by“ je tam popsaná také. Teď už určitě také víš, že to způsobil BOM v souboru index.php a oprava uložením souboru bez BOM už byla snadná. Není-liž pravda? |
||
Vilak Profil |
Díky. Ale jaktože mi to na XAMPP šlo a při vložení na wedos mám najednou v každém souboru tento BOM?
Jinak pro budoucí neznalce - jde to odstranit pomocí hexploreru. |
||
Davex Profil |
#6 · Zasláno: 26. 7. 2016, 21:24:38
Vilak:
„Ale jaktože mi to na XAMPP šlo a při vložení na wedos mám najednou v každém souboru tento BOM?“ BOM tam byl od začátku, ale nevadilo to, protože v XAMPPu je jiná konfigurace PHP (zapnutý output_buffering ) než na webhostingu. PHP skripty se mají psát tak, aby nebyly závislé na nastavení PHP.
|
||
Časová prodleva: 3 dny
|
|||
leorond Profil |
#7 · Zasláno: 29. 7. 2016, 18:17:44
Já používám Eclipse a nemám s BOM problém ale třeba v Notepad++ lze BOM také dobře odstranit.
Ale třeba na Wedos jsem s tím problém měl a na Best hosting zase ne. |
||
Časová prodleva: 8 let
|
0