我正在学习PHP.我已经看到了这两种连接MySQL数据库的方法.
有人可以解释它们之间的区别是什么,以及为什么第二种方法在标准表单提交中不起作用(我是否遗漏了语法错误)?
方法1(工程):
$mysqli = new mysqli("$mysql_server", "$mysql_user", "$mysql_pw", "$mysql_db");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}
Run Code Online (Sandbox Code Playgroud)
方法2(抛出服务器错误):
$link = mysqli_connect("$mysql_server", "$mysql_user", "$mysql_pw", "$mysql_db");
if (!$link) {
die('Could not connect: ' . mysql_error());
}
Run Code Online (Sandbox Code Playgroud) 简单问题:如何以下面的格式显示浏览器的当前日期和时间?:
<h2>[current time, e.g. 02.32am]</h2>
<h4>[day of week, e.g. saturday]</h4>
<h3>[full date, e.g. 11 November 2013]</h3>
Run Code Online (Sandbox Code Playgroud) 我有以下for循环,可以输出列表中的所有照片:
{% if photos %}
{% for photo in photos %}
{% thumbnail photo.photo "100x100" crop="center" as im %}
<img src="{{ im.url }}" alt="User's photos" data-ajax="{% url 'photo_increase_view' pk=photo.id %}"/>
{% endthumbnail %}
{% endfor %}
{% endif %}
Run Code Online (Sandbox Code Playgroud)
如何编辑它以忽略列表中的第一个结果(即显示项目 2、3、4...等)
我有一个模型管理器get_queryset:
class BookManager(models.Manager):
def get_queryset(self):
return super().get_queryset().filter(author=self.request.user
Run Code Online (Sandbox Code Playgroud)
这导致错误:
AttributeError: 'BookManager' 对象没有属性 'request`
我知道经理是“不知道请求的”。我将如何在您的经理/查询集中创建一个为 request.user 提供参数的方法?
在阅读文档时,很少有关于如何以及为何在类中使用 @property 的信息。我能找到的只有:
\n\n\n\n\n也称为 \xe2\x80\x9c 托管属性\xe2\x80\x9d,是 Python 自 2.2 版以来的一项功能。这是实现属性的一种巧妙方法,其用法类似于属性访问,但其实现使用方法调用。
\n
当我在模型中有一个函数时,def get_absolute_url(self):我应该用 来装饰它@property吗?
@property\ndef get_absolute_url(self):\n pass\nRun Code Online (Sandbox Code Playgroud)\n\ndef未装饰的和装饰过的有什么区别@property?我什么时候应该使用它,什么时候不应该使用它?
我正在开发一系列大型html页面,每个页面都使用一个通用结构:header/content/sidebar.
标题和侧边栏部分具有所有页面共有的代码.只有内容更改.
在开发阶段,我希望能够对标题和侧边栏进行一次更改,并查看在所有页面上复制的结果,而无需单独编辑每个页面.
我已经做了一些谷歌搜索,最简单的解决方案似乎是创建2个单独的文本文件与标题和侧边栏部分的代码,然后将其注入我正在编辑的HTML页面中的适当点.
我知道这不建议用于实时项目,因为它会大大增加加载时间,但对于开发工作,它会节省我很多时间.
你同意吗?如果是这样,任何人都知道最简单的方法是什么?
谢谢
我想创建一个媒体查询来更改canvas标签的宽度和高度.
HTML
<canvas id="clock" width="250" height="250">
</canvas>
Run Code Online (Sandbox Code Playgroud)
我希望以通常的方式声明width和height属性.但这似乎不起作用:
CSS
#clock {
width:250;
height:250;
}
@media (max-width: @screen-small) {
#clock {
width:200;
height:200;
}
}
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我有AJAX提交的以下表格:
的HTML
<form class="form-horizontal" id="formEditUsername" action="<?php echo URL; ?>account/editusername_action" method="post">
<input type="text" class="form-control" name="user_name" id="user_name" placeholder="Add username" value="User ">
<button type="submit" class="btn btn-default">Save</button>
</form>
Run Code Online (Sandbox Code Playgroud)
AJAX
$("#formEditUsername").submit(function(event){
//disable default click operation
event.preventDefault();
var action_url = $(this).attr("action");
$(".help-block.username").hide().html("<i class='fa fa-refresh fa-spin'></i> Processing...").fadeIn('slow');
console.log(action_url);
var postData = $(this).serializeArray();
//console.log(postData);
$.post(action_url,postData,function(data){
console.log(data);
var obj = $.parseJSON(data);
$(".help-block.username").html("Saving...");
if(obj.status == "error")
{
$(".help-block.username").css({color: '#990033'});
$(".help-block.username").html(obj.message).fadeIn('slow');
};
if(obj.status == "success")
{
$(".help-block.username").css({color: '#00b25a'});
$(".help-block.username").html(obj.message).fadeIn('slow');
$(".namebox").html(obj.username);
}
});
});
Run Code Online (Sandbox Code Playgroud)
我想添加一个功能,以便在输入(#user_name)失去焦点之后,表单使用focusout()提交。有任何想法吗?
我有以下变量:
$delBtn = $('text');
$updateBtn = $('text2');
Run Code Online (Sandbox Code Playgroud)
现在,如果我想在另一个元素中插入一个,我会使用:
$element.html($delBtn)
Run Code Online (Sandbox Code Playgroud)
但是我怎么能把它们作为一个连接对来插入呢?
$element.html($delBtn + $updateBtn)
Run Code Online (Sandbox Code Playgroud)
似乎不起作用?
我想创建一个 mixin,允许我get按如下方式更改函数的字段:
class MyMixin(self):
myfield = 'field1'
def myfunct(self):
i = MyModel.objects.get(self.myfield=myvar)
Run Code Online (Sandbox Code Playgroud)
这样所需的代码就可以运行了MyModel.objects.get(field1=myvar)。
但是,这种方法返回
语法错误:表达式不能包含赋值
如何动态设置这样的字段名称?
这是关于jQuery语法/代码组织的最佳实践的一般问题.
考虑以下代码片段,在jQuery AJAX函数中使用:
if(obj.status == "error"){
$("#alert").html(obj.message);
}
Run Code Online (Sandbox Code Playgroud)
我也看到过这样写的:
function alert_box(str)
{
var html_str = '';
$("#alert").html(html_str);
}
if(obj.status == "error"){
alert_box(obj.message);
}
Run Code Online (Sandbox Code Playgroud)
从功能上讲,这是完全一样的.我的问题:是否存在区分两者的语义或实际原因?加载时间/性能问题怎么样?
我正在尝试创建一个条件if函数,如果列表的长度大于5,则显示结果:
{% if length(photos) > 5 %}
...
{% endif %}
Run Code Online (Sandbox Code Playgroud)
但是,我知道Could not parse the remainder: '(photos)' from 'length(photos)',我哪里错了?
谢谢