Autor | Zpráva | ||
---|---|---|---|
freeTel Profil * |
#1 · Zasláno: 29. 1. 2020, 15:40:55
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 |
#2 · Zasláno: 29. 1. 2020, 15:55:13
Ve funkci sendChat není proměnná $con definovaná.
www.pehapko.cz/zakladni-kurz/14-rozsah-platnosti |
||
freeTel Profil * |
#3 · Zasláno: 29. 1. 2020, 20:30:02
Kajman:
Děkuji. To jsem přehlídnul. |
||
Časová prodleva: 4 roky
|
0