我想在我的桌子上搜索一列名字和一列姓氏.我目前接受来自字段的搜索字词,并将其与两列进行比较,一次一个
select * from table where first_name like '%$search_term%' or
last_name like '%$search_term%';
Run Code Online (Sandbox Code Playgroud)
这适用于单字搜索术语,但结果集包括名称为"Larry"的每个人.但是如果有人输入名字然后是空格,那么是姓氏,我想要一个更窄的搜索结果.我试过以下没有成功.
select * from table where first_name like '%$search_term%' or last_name
like '%$search_term%' or concat_ws(' ',first_name,last_name)
like '%$search_term%';
Run Code Online (Sandbox Code Playgroud)
有什么建议?
编辑: 我正在测试的名字是"拉里史密斯".db将"Larry"存储在"first_name"列中,将"Smith"存储在"last_name"列中.数据干净,没有多余空格,搜索项左右修剪.
编辑2: 今天早上我尝试了Robert Gamble的答案.他和我昨晚的比赛非常相似.我无法解释,但今天早上它有效.我能想到的唯一区别是,昨晚我将concat函数作为搜索查询的第三个"或"段运行(在查看first_name和last_name之后).今天早上,我查看了上面的内容以及地址和商家名称,将其作为最后一段.
在查询结束时运行mysql函数比在中间运行更好吗?
我在PC上使用XAMPP来托管数据库.我使用phpmybackuppro导出了一个备份("bintra.sql").我在家里的mac上使用xampp,当我尝试导入位于桌面上的sql文件时,我收到此错误.
No data was received to import. Either no file name was submitted, or the file size exceeded the maximum size permitted by your PHP configuration. See FAQ 1.16.
Run Code Online (Sandbox Code Playgroud)
现在,bintra.sql的文件大小是922kb.phpmyadmin屏幕上显示的最大允许大小为3,072KiB,因此我认为不会阻止导入.
我正在使用phpmyadmin v2.11.7
有没有人有任何想法为什么没有收到数据导入?
评论回复:
这些是我从php.ini上传的设置
;Whether to allow HTTP file uploads.
file_uploads = On
;Temporary directory for HTTP uploaded files (will use system default if not specified).
//upload_tmp_dir =
;Maximum allowed size for uploaded
files.
upload_max_filesize = 3M
;Maximum size of POST data that PHP will accept.
post_max_size …
Run Code Online (Sandbox Code Playgroud) 我正在尝试稍微修改默认的WordPress标签云小部件.我不想创建自己的小部件,因为我真的想调整一个小东西.我查看了我的WordPress安装,但找不到包含基本小部件的PHP文件.
即使我假设它们是在每个主题中定义的,我仍然看着核心目录,但空手而归.
所以,如果你们中的任何人碰巧已经想到这一点,请让我的生活更轻松,让我知道我在哪里可以找到默认的小部件...最重要的是标签云小部件.
谢谢
你还有什么比较两个数组($ A和$ B)并减少第一个数据中的匹配元素为数组$ A的下一个循环做准备?
$A = array(1,2,3,4,5,6,7,8);
$B = array(1,2,3,4);
$C = array_intersect($A,$B); //equals (1,2,3,4)
$A = array_diff($A,$B); //equals (5,6,7,8)
Run Code Online (Sandbox Code Playgroud)
这是最简单的方法还是有办法使用我没有想到的另一个功能?我的目标是拥有一个可以循环的数组,拉出相关内容组(我在其他地方定义了这些关系),直到数组返回false.
我正在尝试使用strtotime()
响应按钮单击以相对于前一次点击的前一天提前-1和+1天(两个按钮).
例:
我理解按钮和显示日期,并使用$_GET
和PHP传递信息,但我如何strtotime()
处理上次调用时间旅行脚本的相对日期?
到目前为止,我的工作让我昨天和今天相对于现在而不是相对于前天,或前天,或后天.或者如果我使用我的"最后一个星期一"按钮,那一天或之后的那一天是.
当用户点击以下"li"末尾的img时,我想先获取隐藏输入的两个元素的值.
<ul id="theLists">
<li>
<input class="checkbox" type="checkbox" name="row"/>
<input class="contentId" type="hidden" value="64" name="id"/>
<div id="64" class="editable">Peanuts for me</div>
<img src="/img/delete.gif" alt="delete"/>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我试过这个:
$(document).ready(function(){
$("#theLists img").click(function(){
var contentId = $(this).closest("input[name='id']").val();
});
Run Code Online (Sandbox Code Playgroud)
无济于事.有任何想法吗?我需要设置一个带有行ID的var,在这种情况下是"64".
我能把false
针作为针穿过in_array()
吗?
if(in_array(false,$haystack_array)){
return '!';
}else{
return 'C';
}
Run Code Online (Sandbox Code Playgroud)
在$haystack_array
将只包含布尔值.haystack表示多个写入查询的结果.我试图找出他们中的任何一个是否返回虚假,因此没有完成.
我正在编写一个显示数据库信息的页脚div.页脚具有与页面其余部分不同的背景颜色,并且其高度取决于数据库向其投入的内容量.当我使用php生成内容并调用页脚div周围的边框时,内容会出现,比如400px高,但div边框在div的顶部显示为1px高的矩形.
如何获得自动调整内容的高度?
<div id="footer">
<?php
$an_array=array();
$tasks=mysql_query("select stuff from the db");
while($row=mysql_fetch_assoc($tasks)){
extract($taskrow);
$an_array[]=$task;
}
$an_array=array_chunk($an_array,4);
foreach($an_array as $dtkey=>$dtval){
echo "<dl>";
foreach($dtval as $dtvkey=>$dtvval){
echo "<dt>".$dtvval."</dt>";
}
echo "</dl>";
}
?>
</div>
Run Code Online (Sandbox Code Playgroud)
这就是我得到的.红色边框下方的区域应填充颜色. 边界图片http://www.kevtrout.com/tortus/div.png
根据大众需求,这里是css:
#footer{
border-top: 10px solid #d8d8d8;
background:#5b5b5b;
/*overflow:auto;*///Added this after seeing your answers, it worked
}
dl.tr{
width: 255px;
height:160px;
background: #5b5b5b;
margin:0px;
float:left;
padding: 10px;
}
dt.tr{
font-weight: normal;
font-size: 14px;
color: #d8d8d8;
line-height: 28px;
}
Run Code Online (Sandbox Code Playgroud)
编辑:我在mac上使用firefox
foreach($arrayOne as $value){
do function
}
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我想将$ arrayOne传递给一个循环,有一个函数操作,删除$ arrayOne的一些元素,然后让循环遍历剩下的元素上的简化$ arrayOne,直到循环返回false .
建议?
当我比较两个数组值时,我看到两个看起来相同的字符串.php不同意.
$array1 = array('address'=>'32 Winthrop Street','state'=>'NY');
$array2 = array('address'=>'32 Winthrop Street');
$results = array_diff_assoc($array1, $array2);
var_dump($results)
//echos ['address'] => string(18) "32 Winthrop Street" ['state']=>'NY'
Run Code Online (Sandbox Code Playgroud)
为什么是这样?
编辑 请注意,这不是我正在测试的实际代码,我已经简化了代码来说明我的问题,这是关于字符串是否相等,而不是这个代码是否会运行.