我理解PHP将用户的会话ID存储在名为"PHPSESSID"的cookie中,该cookie存储在客户端的浏览器中,并与服务器上的会话进行匹配,以便能够关联2.关闭浏览器后,会话信息消失但是客户端上的cookie仍然存在.是否可以使用此cookie来恢复旧会话?或者,客户端关闭浏览器时,是否会从服务器中删除所有会话数据?
我首先在我的页面上有这个:
session_start();
$_SESSION['message'] = 'Hello';
echo $_SESSION['message']; // outputs hello
Run Code Online (Sandbox Code Playgroud)
然后我将页面更改为:
$old_session = session_id();
session_id($old_session);
session_start();
echo $_SESSION['message'];
Run Code Online (Sandbox Code Playgroud)
然后我关闭浏览器并重新打开它到这个页面并得到这些错误:
Warning: session_start() [function.session-start]: The session id is too long or contains illegal characters, valid characters are a-z, A-Z, 0-9 and '-,' in C:\xampp\htdocs\localhost\test.php on line 5
Notice: Undefined index: message in C:\xampp\htdocs\localhost\test.php on line 7
Run Code Online (Sandbox Code Playgroud)
关闭浏览器后,如何检索旧的会话信息,甚至可能吗?
到目前为止,我所做的所有网站都使用PHP,我正在考虑学习C#,但在此之前,我需要知道如果部署使用C#编写的网站或应用程序,是否需要购买许可.我认为,因为它是由微软开发的,所以可能会有一些关于它的建议.PHP是开放课程我从来不必担心这个.
那么需要许可证,如果是的话,费率在哪里?
当我在一个名为"source"的变量上调试console时,我得到以下结果:
[Object {
name = "Yahoo", value = "yahoo"
},
Object {
name = "yahtzee", value = "yahtzee"
},
Object {
name = "Yakov Smirnoff", value = "yakov-smirnoff"
},
Object {
name = "Yarbrough", value = "yarbrough"
},
Object {
name = "yard sales", value = "yard-sales"
},
Object {
name = "yarmulke", value = "yarmulke"
},
Object {
name = "yawning", value = "yawning"
},
Object {
name = "Yeah Yeah Yeahs", value = "yeah-yeah-yeahs"
},
Object {
name …Run Code Online (Sandbox Code Playgroud) 在此示例中,字段用户名在users表中,字段email在profiles表中.
UPDATE `profiles`
JOIN `users` ".
SET `username` = 'foo',
`email` = 'bar@aol.com'
WHERE users.user_id = '1'
Run Code Online (Sandbox Code Playgroud)
在这个where子句中,我使用的是users.user_id,但这会导致配置文件表中的所有字段都使用电子邮件"bar@aol.com"进行更新.除了WHERE子句中的users.user_id之外,指定profiles.user_id的语法是什么?
这有效:
$sql = "SELECT id
FROM `users`
WHERE `account_status` = '" . $i . "'";
$query = $this->db->query($sql);
var_dump($query->num_rows());
Run Code Online (Sandbox Code Playgroud)
但这不是:
$sql = "SELECT COUNT(*)
FROM `users`
WHERE `account_status` = '" . $i . "'";
$query = $this->db->query($sql);
var_dump($query->num_rows());
Run Code Online (Sandbox Code Playgroud)
如何在COUNT(*)查询上执行num_rows?也是第二种方式做任何更好的性能明智吗?
此字符串包含78个带HTML的字符和39个不带HTML的字符:
<p>I really like the <a href="http://google.com">Google</a> search engine.</p>
Run Code Online (Sandbox Code Playgroud)
我想根据非HTML字符数截断此字符串,例如,如果我想将上面的字符串截断为24个字符,则输出为:
I really like the <a href="http://google.com">Google</a>
Run Code Online (Sandbox Code Playgroud)
在确定要切断的字符数时,截断没有考虑到html,它只考虑了剥离的计数.但是,它没有留下开放的HTML标记.
如果我这样做,我可以防止默认表单提交就好了:
document.getElementById('my-form').onsubmit(function(e) {
e.preventDefault();
// do something
});
Run Code Online (Sandbox Code Playgroud)
但由于我以模块化的方式组织我的代码,我正在处理这样的事件:
document.getElementById('my-form').addEventListener('onsubmit', my_func);
var my_func = function() {
// HOW DO I PREVENT DEFAULT HERE???
// do something
}
Run Code Online (Sandbox Code Playgroud)
我现在该如何防止违约?
我的网站上有一个评论部分,如果用户按下并按住一个键,如:
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
评论关闭屏幕并突破布局.解决方案是这样的:
.comment {
word-break: break-all;
}
Run Code Online (Sandbox Code Playgroud)
但不幸的是,这打破了所有评论甚至是正常的评论:
I just came here to say tha
t the quick brown fox jumped ov
er the lazy dog.
Run Code Online (Sandbox Code Playgroud)
如何解决第一个问题而不造成第二个问题?
我有这样的查询:
$query = "SELECT * FROM `profit_by_campaign` WHERE campaign_name = 'myCoolCampaign' AND request_date = '2017-10-16'";
try {
$stmt = $this->dbh->prepare($query);
$stmt->execute();
$rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
}
catch(PDOException $e) {
die('Error: unable to query ' . $e->getMessage());
}
Run Code Online (Sandbox Code Playgroud)
在获取结果后,我做了一些逻辑:
$total_revenue = 0;
$total_spending = 0;
foreach($rows as $row) {
$total_revenue += $row['revenue'];
$total_spending += $row['spending'];
}
$total_profit = ($total_revenue - $total_spending);
echo $total_profit;
Run Code Online (Sandbox Code Playgroud)
所以基本上我试图通过从它的收入中减去它的支出来获得一个活动的总利润.我的问题是,是否可以直接在MYSQL查询本身而不是在PHP中执行此逻辑?
我不确定是否只是使用开发工具进行了一些更改并进行了更新,还是不确定是否在设置上按了某些内容,但是我无法再在移动模拟器中找到圆形鼠标指示器。有办法找回它吗?
复制步骤: