Php 基于用户名字段字符串中第一个字符的条件语句mysql
我已经创建了一个数据库,我希望在其中有两种用户类型,基本上我希望基于username字段中的序列中的第一个字符($str[0])创建一个条件语句。e、 g如果用户名以“A”开头重定向到A.html,否则用户名以“B”开头重定向到B.html 我做了一个基本的尝试,但失败了Php 基于用户名字段字符串中第一个字符的条件语句mysql,php,mysql,Php,Mysql,我已经创建了一个数据库,我希望在其中有两种用户类型,基本上我希望基于username字段中的序列中的第一个字符($str[0])创建一个条件语句。e、 g如果用户名以“A”开头重定向到A.html,否则用户名以“B”开头重定向到B.html 我做了一个基本的尝试,但失败了 if($myusername==$str ==='a:0;') { $sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='
if($myusername==$str ==='a:0;') {
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
} else if ($myusername==$str ==='b:0;'){
$sql="SELECT * FROM $tbl_two WHERE username='$myusername' and password='$mypassword'";
}
$result=mysql_query($sql);
我想你的问题是: 如何选择字符串的第一个字符:
$string = "abc";
echo $string[0];
// This will output: "a"
使用同一变量比较两个条件
if($myusername === $str && $myusername[0] === 'a') {
// Do something..
}
我仍然不太确定我是否理解您想要实现的目标,但至少这会引导您朝着正确的方向前进:)查看您的代码,a:0;似乎来自于正在解析的变量,它提供的不仅仅是您想要的值 您真正想要的是直接读取该值(即,您如何读取该值?),并检查第一个字符是否是您想要的:
$myusername = $_POST['username'];
要基于第一个字符进行重定向,如下所示:
$firstChar = substr($myusername, 0, 1);
if ($firstChar == "a")
$sql="SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
elseif ($firstChar == "b")
$sql="SELECT * FROM $tbl_two WHERE username='$myusername' and password='$mypassword'";
如果您有两个以上的选项,您可能希望执行switch语句,而不是“If”。我看不出代码中“第一个字符”的原因。你能解释一下你的需求吗,或者写一个你想要实现的伪代码吗?我需要创建一个带有两个会话区域的登录,我试图使用用户名字符串的第一个字符触发一个sql语句