过程是这样的
解析微信发来的xml,获取用户发送的内容
根据内容,进行判断回复
读取数据库内容,作为字符串返回,回复信息
但是好像在数据库操作中出现了问题,怎么都回复不了。其它 case '1' 等等都没问题。
我试图在方法getsql() 中在每一步中添加 echo '成功' 测试,到下面我注释的地方就不再返回,大神们看看怎么回事?
怎么查看支不支持mysqli呢?我是centos 6.7 php 5.6 phpinfo() 显示的关于mysqli 的内容如下:
我知道windows上的php里面有个extension 开启就可以了,linux 里面的php配置是什么样的呢?
/*-------------------------------------判断信息事件,根据用户发来的信息内容,判断回复$arr: 解析后的 微信发来的数据--------------------------------------*/ public function rsptext($arr){ switch (trim(strtolower($arr->content))){ case '1':{ $this->replymsg($arr,success); };break; case '2':{ $this->replymsg($arr,$this->getsql()); };break; case 'time':{ $this->replymsg($arr,date(y-m-d).\n.date(h:i:s)); };break; default: $this->replymsg($arr,看海哟); } }/*-----------------------------------回复信息$arr : 微信发来的 post 数据解析后的对象$content: 要回复的内容,字符串-----------------------------------*/ public function replymsg($arr,$content=) { $touser = $arr->tousername; $fromuser = $arr->fromusername; $time = time(); $msgtype = 'text'; $rsppatten = '%s'; $rspmsg = sprintf($rsppatten, $fromuser, $touser, $time, $msgtype, $content); echo $rspmsg; }//读取数据库内容 public function getsql(){ $host= 111.111.111.111; $port = '1111'; $database = wordpress; $table = wp_posts; $user = 1111; $passwd = 1111; $sql = select post_title from .$table. limit 1,10; //!!!!!!!!!到此处还是可以返回的,下面这句就不再返回了!!!!!!! $link = mysqli_connect($host,$user,$passwd,$database,$port); $tempresult = $link->query($sql); $str = ; while($row = $tempresult->fetch_array()){ $str = $str.$row['post_title']; } $link->close(); return $str; //返回字符串 }
回复内容: 过程是这样的
解析微信发来的xml,获取用户发送的内容
根据内容,进行判断回复
读取数据库内容,作为字符串返回,回复信息
但是好像在数据库操作中出现了问题,怎么都回复不了。其它 case '1' 等等都没问题。
我试图在方法getsql() 中在每一步中添加 echo '成功' 测试,到下面我注释的地方就不再返回,大神们看看怎么回事?
怎么查看支不支持mysqli呢?我是centos 6.7 php 5.6 phpinfo() 显示的关于mysqli 的内容如下:
我知道windows上的php里面有个extension 开启就可以了,linux 里面的php配置是什么样的呢?
/*-------------------------------------判断信息事件,根据用户发来的信息内容,判断回复$arr: 解析后的 微信发来的数据--------------------------------------*/ public function rsptext($arr){ switch (trim(strtolower($arr->content))){ case '1':{ $this->replymsg($arr,success); };break; case '2':{ $this->replymsg($arr,$this->getsql()); };break; case 'time':{ $this->replymsg($arr,date(y-m-d).\n.date(h:i:s)); };break; default: $this->replymsg($arr,看海哟); } }/*-----------------------------------回复信息$arr : 微信发来的 post 数据解析后的对象$content: 要回复的内容,字符串-----------------------------------*/ public function replymsg($arr,$content=) { $touser = $arr->tousername; $fromuser = $arr->fromusername; $time = time(); $msgtype = 'text'; $rsppatten = '%s'; $rspmsg = sprintf($rsppatten, $fromuser, $touser, $time, $msgtype, $content); echo $rspmsg; }//读取数据库内容 public function getsql(){ $host= 111.111.111.111; $port = '1111'; $database = wordpress; $table = wp_posts; $user = 1111; $passwd = 1111; $sql = select post_title from .$table. limit 1,10; //!!!!!!!!!到此处还是可以返回的,下面这句就不再返回了!!!!!!! $link = mysqli_connect($host,$user,$passwd,$database,$port); $tempresult = $link->query($sql); $str = ; while($row = $tempresult->fetch_array()){ $str = $str.$row['post_title']; } $link->close(); return $str; //返回字符串 }
数据库这部分每一行都没错,放到一起就错了。
前面是连接是面向过程的方法mysqli_connect
后面查询和取值是面向对象的方法
mysqli_connect换成new mysqli吧
试着用mysql_connect(),mysql_select_db()和mysql_query()处理