如何设置从1001开始的MySQL表中"id"列的初始值?
我想做一个插入 "INSERT INTO users (name, email) VALUES ('{$name}', '{$email}')";
不指定id列的初始值.
我有点困惑,PHP中有这么多功能,有些使用这个,有些使用它.有些人使用:htmlspecialchars(),htmlentities(),strip_tags()等
哪个是正确的,你们通常使用什么?
这是正确的(建议我更好一个,如果有的话):
$var = mysql_real_escape_string(htmlentities($_POST['username']));
Run Code Online (Sandbox Code Playgroud)
这行可以防止MySQL注入和XSS攻击??
顺便问一下,除了XSS攻击和MySQL注入之外还有其他我需要关注的事情吗?
编辑
总结:
如果我想将字符串插入数据库,我不需要使用htmlentities,只需使用mysql_real_escape_string.显示数据时,使用htmlentities(),是你的意思吗?
总结:
mysql_real_escape_string 插入数据库时使用htmlentities() 在将数据输出到网页时使用htmlspecialchars() 用的时候?strip_tags() 用的时候?addslashes() 用的时候?有人可以填写问号吗?
当我通过phpMyAdmin创建一个新的MySQL数据库时,我可以选择排序规则(例如-default,armscii8,ascii,...和UTF-8).我知道的是UTF-8,因为我总是在HTML源代码中看到这一点.但是默认排序规则是什么?这些选择之间有什么区别,我应该使用哪一个?
目前,当用户登录时,我创建了2个会话.
$_SESSION['logged_in'] = 1;
$_SESSION['username'] = $username; // user's name
Run Code Online (Sandbox Code Playgroud)
那么,那些需要登录的页面,我只是这样做:
if(isset($_SESSION['logged_id'])){
// Do whatever I want
}
Run Code Online (Sandbox Code Playgroud)
有没有安全漏洞?我的意思是,攻击我的会话容易吗?人们如何破解会话?以及如何防止它?
编辑:
刚发现这个:
http://www.xrvel.com/post/353/programming/make-a-secure-session-login-script
http://net.tutsplus.com/tutorials/php/secure-your-forms-with-form-keys/
刚发现链接,这些方法是否足够好?请提出你的意见.我还没有得到最好的答案.
从php.net得到它,但我不确定这是怎么每个人都摧毁所有会话?
// Unset all Sessions
$_SESSION = array();
if (isset($_COOKIE[session_name()])) {
setcookie(session_name(), '', time() -42000, '/');
}
session_destroy();
Run Code Online (Sandbox Code Playgroud)
代码会破坏所有会话吗?这是最常见的方式吗?你们怎么破坏php会话?
哦是的,顺便问一下,那是session_name()什么?所有会话名称?例如$_SESSION['var1'],$_SESSION['var2']......?
我不需要再使用unset($_SESSION['var1']);了吗?
使用session_destroy()和unset($_SESSION[])?之间有什么不同?
好吧,到目前为止,我一直在使用php内置函数,mail(),我没有遇到任何问题,即使我向1000多名用户发送了一个爆炸.但是,最近我发现了这个phpmailer,它是专门设计用来发送电子邮件的.
Q1:我应该改成这个phpmailer吗?
Q2:使用phpmailer有什么好处?
Q3:我在phpmailer网站上发现了其他产品,即phpmailer FE,ML等.那是什么?你们正在使用哪一个?
问题4:有没有人尝试使用phpmailer向2000多名用户发送爆炸邮件?如果是,是否会导致任何问题?
我正在使用php和mysql.
我将发送10k ++(10万多封)电子邮件来更新我的订阅者,这是我第一次发送它们.我将使用php邮件功能,基本上这里是我要做的:
首先从数据库中获取数据:
Select name, email FROM data
Run Code Online (Sandbox Code Playgroud)
之后,使用while循环发送数据:
while($r = mysql_fetch_assoc($exe)){
...
if($mail){
echo "success<br>";
} else {
echo "failed<br>";
}
}
echo "Sent all";
Run Code Online (Sandbox Code Playgroud)
我包含if .. else语句,以确保每封电子邮件都成功发送.有什么我需要照顾的吗?发送给10K ++用户时会有任何问题吗?
您要发送的电子邮件数量是否有限制?
是否有可能找出用户来自哪里?例如,我给客户端一个横幅和链接.客户可以将横幅/链接放到任何网站,让我们说到一个名为www.domain.com的网站.
当用户点击横幅时,是否可以知道他来自哪里(www.domain.com)?
我是php的新手,我可以做一个简单的登录页面,例如创建表单,提交表单,处理和在php页面中进行身份验证等等.
我在互联网上的某个地方看过,看到像银行,谷歌和雅虎这样的大公司,他们的登录表单是"https"而不是"http".所以我试试google什么是"https"的东西.好吧,我不能说我完全理解那是什么,但我想我知道这个概念,即创建一个更安全的登录页面.
我相信php可以做到(因为我看到使用https的wordpress,而wp正在使用php).有没有教程,或者你们可以给出一个如何用PHP进行安全登录https页面的示例代码?没有必要的完整代码(因为我不想麻烦你们),但如果可以给出完整的代码,我最欣赏:)
我刚发现了一些东西.
echo $var1 , " and " , $var2;
Run Code Online (Sandbox Code Playgroud)
是相同的:
echo $var1 . " and " . $var2;
Run Code Online (Sandbox Code Playgroud)
什么是PHP中的实际字符串连接运算符?我应该使用.还是,?
我是在线网络应用程序的新手.我使用的是php,我得到了这段代码:
if(isset($_GET['return']) && !empty($_GET['return'])){
return = $_GET['return'];
header("Location: ./index.php?" . $return);
} else {
header("Location: ./index.php");
Run Code Online (Sandbox Code Playgroud)
}
的$return变量是URL变量可以由黑客容易地改变.
我$return从这里得到变量:www.web.com/verify.php?return=profile.php
有什么我应该注意的吗?我应该在这一行中使用htmlentities:
header("Location: ./index.php?" . htmlentities($return));
Run Code Online (Sandbox Code Playgroud)
它是否容易受到黑客的攻击?
我该怎么做才能防止黑客入侵?
好吧,我将设计一个数据库结构,但我不知道从哪里开始.你能回答以下问题帮我吗?我的数据库将存储大约数十万行/数据,同时为1000 ++用户提供服务.它需要精心设计.
设计mysql数据库结构问题:
Q1:我知道这是一个愚蠢的问题,但你们如何设计一个mysql数据库结构?我必须先学习规范化吗?我吮吸这个话题:(
Q2:设计数据库结构时是否有任何提示或技巧?
Q3:设计mysql数据库结构有哪些重要的东西?
Q4:好的,另一个愚蠢的问题,使用mysql数据库和xml有什么区别?
Q5:使用mysql数据库有什么缺点/缺点吗?
仅供参考:我是一名新的mysql开发人员.