我在数据库端有什么需要做的,还是只是改变的php?我可以用mysqli函数代替mysql函数吗?还有什么我应该知道的吗?
我正在使用带有图标的日期选择器(小日历).当我用鼠标将鼠标悬停在它上面然后点击它以获得日期选择器日历时,在所有浏览器中都会显示一个带有椭圆的恼人小灰色框(工具提示?).它很丑!我怎么摆脱它?我在这个插件的演示页面上看到了它,所以它不仅仅是我的代码.它必须是默认值,因为我没有在任何地方设置它,也看不到在哪里设置或重置它.(我正在使用php.)如何将其关闭或用有意义的东西替换椭圆?
HTML
<p><input type='text' id='CO' class="date-pick" name='CO'>
Run Code Online (Sandbox Code Playgroud)
JQuery的
$(function() {
//set your date picker
$("#CO").datepicker({
dateFormat: 'mm/dd/yy',
changeMonth: true,
changeYear: true,
showOn: "both",
buttonImage: "css/images/calendar-green.gif",
buttonImageOnly: true,
buttonImageText: "Calendar"
});
});
Run Code Online (Sandbox Code Playgroud) 我在这段代码中使用foreach获取了"无法访问空属性错误".print_r($captions)
并且print_r($updates
)显示每个数组中的预期值.
$updates
是一组已选中的复选框,用户希望更新照片的标题.$captions
是数据库中所有标题的数组.
为简洁起见,此处显示的PHP处理省略了数据卫生.无论是否有卫生程序,代码都会给出错误.
if(isset($_POST['update']) && isset($_POST['caption'])){
//check whether any photo captions are marked for update
@$updates=$_POST['update'];
@$captions=$_POST['caption'];
foreach($updates as $key->$photoid){
$query="
UPDATE photo
SET caption='".$captions[$key]."'
WHERE id='".$photoid."'
LIMIT 1";
$result=query($query);
$message[]="Caption for photo # $photoid was successfully updated.";
}
}
Run Code Online (Sandbox Code Playgroud)
表单由循环生成,该循环使用数据库中的记录(photoid,图像和标题)填充每一行,并添加一个复选框以指示用户是否要更新标题.
<tr>
<td><? echo $thisphotoid; ?>.</td>
<td><img src="<? echo '.SITE_URL.'images/banner/'.$thisfilename; ?>" /></td>
<td><textarea name="caption[]" cols="40" rows="5"><? echo $thiscaption; ?></textarea></td>
<td><input type="checkbox" name="update[]" value="<? echo $thisphotoid; ?>" /></td>
</tr>
Run Code Online (Sandbox Code Playgroud) 这是我第一次体验mysqli.它似乎是在mysqli_num_rows()中的括号之间寻找结果集的名称.然而,当我尝试$ stmt,$ conn,什么都没有时,我得到了同样的错误.令人沮丧!什么是$ WHAT在下面的最后一行?
或许我正在尝试错误的方法.我想做的就是检查结果是否已返回.我真的不需要行数.我是否应该使用错误消息执行else语句?这是最好的方法吗?有没有一种很好的方法来编写一个连接和接受查询及其参数的函数?我为mysql写了一个,但这是如此不同!我不期待重写几十个问题!
$conn = mysqli_connect($host, $user, $pwd, $db,$port=$port_nbr);
if ($mysqli_connect_errno) {
printf("Connect failed: %s\n",
mysqli_connect_error());
exit;
}
if($stmt=$conn->prepare("SELECT id, name, status, type FROM organization")) {
$stmt->execute();
$stmt->bind_result($org_id, $orgname, $orgstatus, $orgtype);
$num=mysqli_num_rows($WHAT);
}
Run Code Online (Sandbox Code Playgroud) 我是jQuery的新手,需要一些过滤类的帮助.用户可以从九个按钮中进行选择,以选择要显示/隐藏的事件类型.单击一种颜色,仅显示具有该颜色的事件,其余部分将隐藏.点击"全部",所有事件都显示没有隐藏.所有活动都从一开始display:block
.
示例控制按钮:
<li class="all" id="all-events"><a href="#" onclick="showEvents('event-all')">
<img src="swatch-all.png" alt="" /></a></li>
<li class="red" id="red-events"><a href="#" onclick="showEvents('event-red')">
<img src="swatch-red.png" alt="" /></a></li>
<li class="blue" id="blue-events"><a href="#" onclick="showEvents('event-blue')">
<img src="swatch-blue.png" alt="" /></a></li>
Run Code Online (Sandbox Code Playgroud)
这些事件是通过php从数据库中提取出来的,如下例所示:
<div id="bigCal">
<p class="all"><a href="http://foo.com" title="All event">All events</a></p>
<p class="blue"><a href="http://bar.com" title="Blue event">Blue event</a></p>
<p class="red"><a href="http://foobar.com" title="Red event">Red event</a></p>
</div>
Run Code Online (Sandbox Code Playgroud)
我已经在jQuery上工作了两天!不确定是否使用.filter
或.hasClass
或.is
.它都不起作用.我试过的最简单的是:
function showEvents(color) {
($('p').hasClass(color)) ? this.style.display="block" : this.style.display="none";
}
Run Code Online (Sandbox Code Playgroud)
另一种无所作为的尝试是
function showEvents(color){
$("p[className*='event-']").css('display', 'none');
$("p[className=color]").css('display', 'block');
if ($("p[className='event-all']"))
$("p[className*='event-']").css('display', 'block'); …
Run Code Online (Sandbox Code Playgroud)