[英]php Class not working functions
我遇到了一些奇怪的問題。 使用我的類我連接到mysql,連接成功但是當我調用一個函數時它不起作用。 我使用自己的錯誤處理程序,如果我在這行中有一些錯誤,它使用退出; 我在調用函數之前使用了echo並且在頁面沒有查殺之后(這意味着php工作成功)mysql查詢我已經檢查了它的工作但是當我使用返回'some text'時; 它沒有回來。 有什么功能不起作用的建議?
我的課:
<?php
include('../config.php');
include('../chat_error_handler.php');
class Chat {
private $mysqli;
var $con;
//Constructor open db conn
function __construct() {
$this->mysqli = new mysqli('localhost', 'root', '', 'test');
}
//destructor close db conn
function __destruct() {
$this->mysqli->close();
}
public function postNewMessage($user_name, $message, $color, $room_id) {
$user_name = $this->mysqli->real_escape_string($user_name);
$message = $this->mysqli->real_escape_string($message);
$color = $this->mysqli->real_escape_string($color);
$room_id = $this->mysqli->real_escape_string($room_id);
$query = 'INSERT INTO chat (posted_on, account, message, color, room_id)' .
' VALUES (NOW(), "'.$user_name.'", "'.$message.'", "'.$color.'", "'. $room_id .'")';
$result = $this->mysqli->query($query);
return 'Pranesimas';
$result->close();
}
我的php我用來調試:
<?php
include('core/chat.class.php');
include('chat_error_handler.php');
$chat = new Chat();
$message = 'testas';
echo $message.'<br/>';
$chat->postNewMessage('testing', $message, '#000000', 1);
echo '<br/>'.$message;
?>
public function postNewMessage($user_name, $message, $color, $room_id) {
$user_name = $this->mysqli->real_escape_string($user_name);
$message = $this->mysqli->real_escape_string($message);
$color = $this->mysqli->real_escape_string($color);
$room_id = $this->mysqli->real_escape_string($room_id);
$query =
"INSERT INTO
chat ( posted_on,
account,
message,
color,
room_id )
VALUES ( NOW(),
'". $user_name ."',
'". $message ."',
'". $color ."',
'". $room_id ."' )";
$result = $this->mysqli->query($query);
if ( $result ) {
return 'Pranesimas';
} else {
return false;
}
}
關於PHP5和上層的'var'
。 它用於在PHP4中聲明類成員變量,不再需要它。 它將在PHP5中運行,但會在PHP中從版本5.0.0
到版本5.1.2
引發E_STRICT
警告,因為它已被棄用。
更新:
public function postNewMessage($user_name, $message, $color, $room_id) {
return 'Pranesimas1';
$user_name = $this->mysqli->real_escape_string($user_name);
$message = $this->mysqli->real_escape_string($message);
$color = $this->mysqli->real_escape_string($color);
return 'Pranesimas2';
$room_id = $this->mysqli->real_escape_string($room_id);
$query = 'INSERT INTO chat (posted_on, account, message, color, room_id)' .
' VALUES (NOW(), "'.$user_name.'", "'.$message.'", "'.$color.', "'. $room_id .'")';
$result = $this->mysqli->query($query);
return 'Pranesimas';
$result->close();
}
嘗試逐步添加返回以檢測問題所在並讓我知道結果。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.