Autor Zpráva
freeTel
Profil *
Zdravím a zároveň posílám svůj nevyřešitelný problém. Píše mi to: mysqli_query () očekává, že parametr 1 bude mysqli, null zadaný v ....
Chyba odkazuje na tohle volání: mysqli_query($con,"INSERT INTO chat(chat.od,chat.pro,chat.message,chat.sent) VALUES('webpages','superku','nejaky text',now())");


<?php session_start();
define("DBPATH","localhost");
define("DBUSER","root");
define("DBPASS","");
define("DBNAME","test");
global $dbh;
$con = mysqli_connect(DBPATH,DBUSER,DBPASS,DBNAME);


//mysqli_selectdb(DBNAME,$dbh);
$_SESSION['username'] == 'neco';
$_POST['pro'] = 'nekde';
$_POST['message'] = 'test';
$_GET['action'] = 'sendchat';
if($_GET['action'] == "chatheartbeat"){chatHeartbeat();} 
if($_GET['action'] == "sendchat"){sendChat();} 
if($_GET['action'] == "closechat"){closeChat();} 
if($_GET['action'] == "startchatsession"){startChatSession();} 
if(!isset($_SESSION['chatHisprory'])){
    $_SESSION['chatHisprory'] = array();    
}
if(!isset($_SESSION['openChatBoxes'])){
    $_SESSION['openChatBoxes'] = array();    
}

function chatHeartbeat(){
    $query = mysql_query("SET NAMES 'utf8'");
    $query = $mysqli->query("select * from chat where (chat.pro = '".$_SESSION['username']."' AND recd = 0) order by id DESC") or die(mysql_error());
    $items = '';
    $chatBoxes = array();
    while($chat = mysqli_fetch_array($query)){
        if(!isset($_SESSION['openChatBoxes'][$chat['od']]) && isset($_SESSION['chatHisprory'][$chat['od']])){
            $items = $_SESSION['chatHisprory'][$chat['od']];
        }
        $chat['message'] = sanitize($chat['message']);
        $items .= <<<EOD
   {
            "s": "0",
            "f": "{$chat['from']}",
            "m": "{$chat['message']}"
       },
EOD;

    if(!isset($_SESSION['chatHisprory'][$chat['od']])){
        $_SESSION['chatHisprory'][$chat['od']] = '';
    }
    $_SESSION['chatHisprory'][$chat['od']] .= <<<EOD
    {
            "s": "0",
            "f": "{$chat['from']}",
            "m": "{$chat['message']}"
       },
EOD;
        unset($_SESSION['tsChatBoxes'][$chat['od']]);
        $_SESSION['openChatBoxes'][$chat['od']] = $chat['sent'];
    }

    if(!empty($_SESSION['openChatBoxes'])){
    foreach($_SESSION['openChatBoxes'] as $chatbox => $time){
        if(!isset($_SESSION['tsChatBoxes'][$chatbox])){
            $now = time()-strprotime($time);
            $time = date('H:i:s', strprotime($time));
            $message = "Naposledy: ".$time;
            if($now > 180){
                $items .= <<<EOD
{
"s": "2",
"f": "$chatbox",
"m": "{$message}"
},
EOD;

    if(!isset($_SESSION['chatHisprory'][$chatbox])){
        $_SESSION['chatHisprory'][$chatbox] = '';
    }
    $_SESSION['chatHisprory'][$chatbox] .= <<<EOD
        {
"s": "2",
"f": "$chatbox",
"m": "{$message}"
},
EOD;
            $_SESSION['tsChatBoxes'][$chatbox] = 1;
        }
        }
    }
}

  $query = $mysqli->query("SET NAMES 'utf8'");
    $query = $mysqli->query("update chat set recd = 1 where chat.pro = '".$_SESSION['username']."' and recd = 0") or die(mysql_error());
    if($items != ''){
        $items = substr($items, 0, -1);
    }
header('Content-type: application/json');
?>
{
        "items": [
            <?php echo $items;?>
        ]
}
<?php
exit(0);
}
function chatBoxSession($chatbox){
    $items = '';
    if(isset($_SESSION['chatHisprory'][$chatbox])){
        $items = $_SESSION['chatHisprory'][$chatbox];
    }
    return $items;
}
function startChatSession(){
    $items = '';
    if(!empty($_SESSION['openChatBoxes'])){
        foreach($_SESSION['openChatBoxes'] as $chatbox => $void){
            $items .= chatBoxSession($chatbox);
        }
    }
    if($items != ''){
        $items = substr($items, 0, -1);
    }
header('Content-type: application/json');
?>
{
        "username": "<?php echo $_SESSION['username'];?>",
        "items": [
            <?php echo $items;?>
        ]
}
<?php
    exit(0);
}

function sendChat(){
  $message=strip_tags($_POST['message']);
    $frm = $_SESSION['username'];
    $pro = $_POST['pro'];
    $_SESSION['openChatBoxes'][$_POST['pro']] = date('Y-m-d H:i:s', time());
    $messagesan = sanitize($message);
    $_SESSION['openChatBoxes'][$_POST['pro']] = date('Y-m-d H:i:s', time());
    $messagesan = sanitize($message);
    if(!isset($_SESSION['chatHisprory'][$_POST['pro']])){
        $_SESSION['chatHisprory'][$_POST['pro']] = '';
    }
    $_SESSION['chatHisprory'][$_POST['pro']] .= <<<EOD
  {
            "s": "1",
            "f": "{$pro}",
            "m": "{$messagesan}"
  },
EOD;
    unset($_SESSION['tsChatBoxes'][$_POST['pro']]);
  //$mysqli->query("DELETE FROM chat WHERE sent < DATE_ADD(NOW(),INTERVAL -5 MINUTE)");
  //$mysqli->query("SET NAMES 'utf8'");
    //$mysqli->query("insert into chat (od,pro,message,sent) values ('".$frm."','".$pro."','".$message."',NOW())");
  //$insert = mysqli_query("SET NAMES 'utf8'");
  mysqli_query($con,"INSERT INTO chat(chat.od,chat.pro,chat.message,sent) VALUES('webpages','superku','nejaky text',now())");
  
  
    echo "1";
    exit(0);
}
function closeChat(){
    unset($_SESSION['openChatBoxes'][$_POST['chatbox']]);
    echo "1";
    exit(0);
}
function sanitize($text){
    $text = strip_tags($text,ENT_QUOTES);
    return $text;
}
?>
Kajman
Profil
Ve funkci sendChat není proměnná $con definovaná.
www.pehapko.cz/zakladni-kurz/14-rozsah-platnosti
freeTel
Profil *
Kajman:
Děkuji. To jsem přehlídnul.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0