我正在制作一个Android应用程序,使用php将数据保存到mySql中。现在,在制作表格并保存数据后,我想获取数据。但是我想使用前三个或四个字母获取数据。我该怎么做,请帮助我。我的PHP代码是。
<?php
require "loginConnect.php";
$bookname = $_GET['bookname'];
$sql = "SELECT * FROM novels WHERE bookname LIKE '$bookname%'";
$r = mysqli_query($con,$sql);
$result = array();
$row = mysqli_fetch_array($r);
array_push($result,array(
"id"=>$row['id'],
"photo"=>$row['photo'],
"bookname"=>$row['bookname'],
"phoneNumber"=>$row['phoneNumber'],
"price"=>$row['price'],
"discription"=>$row['discription'],
"address"=>$row['address'],
"publicationName"=>$row['publicationName']
));
echo json_encode(array('result'=>$result));
mysqli_close($con);
?>
使用 PHP substr() 和 MySQL LIKE
substr($bookname, 0, 4)
会给你前四个角色。
like '$bookname%'
将为您提供从这四个字符开始的所有bookname
记录。
$bookname = substr($bookname, 0, 3);
$sql = "SELECT * FROM novels WHERE bookname LIKE '$bookname%'";
您可以使用
substr
函数来获取单词的前 3/4 个字符。喜欢这个
$characters = substr($bookname, 0, 4);
并在 SQL 查询中使用 LIKE
根据您获得的字符查找结果。
$sql = "SELECT * FROM novels WHERE bookname LIKE '$characters%'";
所以你的脚本将看起来像这样。
<?php
require "loginConnect.php";
$bookname = $_GET['bookname'];
$characters = substr($bookname, 0, 4);
$sql = "SELECT * FROM novels WHERE bookname LIKE '$characters%'";
$r = mysqli_query($con,$sql);
$result = array();
$row = mysqli_fetch_array($r);
array_push($result,array(
"id"=>$row['id'],
"photo"=>$row['photo'],
"bookname"=>$row['bookname'],
"phoneNumber"=>$row['phoneNumber'],
"price"=>$row['price'],
"discription"=>$row['discription'],
"address"=>$row['address'],
"publicationName"=>$row['publicationName']
));
echo json_encode(array('result'=>$result));
mysqli_close($con);
?>