刚接触PHP和数据库学习,研究发现了PHP字符串字数统计手册。不知道这个功能怎么用?我的目标是匹配字符串中的特定单词并计算它们。我的问题之一是查看从驻留在数据库中的文本区域收集的值。
用户输入的文本区域中的所有名称都在数据库中,如果有一个名称并且只有一个名称我可以像Tom一样搜索并找到它。如果有多个名字 IE Tom Bob Harry,则没有匹配项。似乎数据库中的多个名称被视为一个字符串 IE Tom space(space) Bob (space) Harry (space) 现在是 TomBobHarry,无论是在新行(空格)上还是在其旁边带有(空格)。
我的问题是这个?如果我将字符串分成带有空格的单词,然后我可以搜索并计算单词吗? 我怎样才能做到呢?
非常感谢任何建议。预先感谢。
我的目标是匹配字符串中的特定单词并计算它们。我的问题之一是查看从驻留在数据库中的文本区域收集的值。
我的问题是这个?如果我将字符串分成带有空格的单词,然后我可以搜索并计算单词吗? 我怎样才能做到呢?
我现在拥有的:
`if(!empty($_POST))
{
$aKeyword = explode(" ", $_POST['keyword']);
$query = "SELECT custumer FROM subscribers WHERE custumer like '%" . $aKeyword[0] . "%'";
for($i = 1; $i < count($aKeyword); $i++) {
if(!empty($aKeyword[$i])) {
$query .= " OR custumer like '%" . $aKeyword[$i] . "%'";
}
}
`if(!empty($_POST))
{
$aKeyword = explode(" ", $_POST['keyword']);
$query = "SELECT custumer FROM subscribers WHERE custumer like '%" . $aKeyword[0] . "%'";
for($i = 1; $i < count($aKeyword); $i++) {
if(!empty($aKeyword[$i])) {
$query .= " OR custumer like '%" . $aKeyword[$i] . "%'";
}
}
$result = $db->query($query);
echo "<br>You have searched for keywords: " . $_POST['keyword'];
if(mysqli_num_rows($result) > 0) {
$row_count=0;
echo "<br>Result Found: ";
echo "<br><table border='1'>";
While($row = $result->fetch_assoc()) {
$row_count++;
echo "<tr><td> ROW ".$row_count." </td><td>". $row['custumer'] . "</td></tr>";
}
echo "</table>";
}
else {
echo "<br>Result Found: NONE";
}
}
?>
Below is the form:
<form action="search.php" method="post" >
<h3>Search Keywords:</h3>
<input type="text" name="keyword">
<input type="submit" value="Search">
</form>`
非常感谢任何建议。预先感谢。
使用此代码
<?php
if(!empty($_POST)) {
if (!strlen(trim($_POST['keyword']))){
echo 'Keywords is empty';
exit;
}
$aKeyword = explode(" ", trim($_POST['keyword']));
$query = "SELECT custumer FROM subscribers WHERE custumer like '%" . $aKeyword[0] . "%'";
if (count($aKeyword)>1) {
for ($i = 1; $i < count($aKeyword); $i++) {
if (!empty($aKeyword[$i])) {
$query .= " OR custumer like '%" . $aKeyword[$i] . "%'";
}
}
}
$result = $db->query($query);
echo "<br>You have searched for keywords: " . $_POST['keyword'];
if (mysqli_num_rows($result) > 0) {
$row_count = 0;
echo "<br>Result Found: ";
echo "<br><table border='1'>";
while ($row = $result->fetch_assoc()) {
$row_count++;
echo "<tr><td> ROW " . $row_count . " </td><td>" . $row['custumer'] . "</td></tr>";
}
echo "</table>";
} else {
echo "<br>Result Found: NONE";
}
}
?>
Below is the form:
<form action="search.php" method="post" >
<h3>Search Keywords:</h3>
<input type="text" name="keyword">
<input type="submit" value="Search">
</form>