dousi5501 2010-12-05 05:10
浏览 46

在PHP中为用户名分配ID

Upon a user entering x.com/y.php?username=z, I would like to take that username as an argument to generate an ID and associate it with that username by writing it to a table. However, so far I've been getting nothing but 500 errors when I input a username.

(Third day into this)

<?php
error_reporting(E_ALL);
$con = mysql_connect("localhost","&&&&&","&&&&&");
if (!$con)
    {
        die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("wp", $con);

Function RandomString()
{
    $characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
    for ($i = 0; $i < 20; $i++) 
    {
        $randstring.= $characters[rand(0, strlen($characters))];
    }
    return $randstring;
}

if (isset($_GET["username"]) && !empty($_GET["username"])) 
{
    $username = $_GET['username'];

    $usercheck = mysql_query("SELECT COUNT(*) AS a FROM wp_users WHERE user_login=".$username."",$con);
    $res1 = $usercheck->fetch();
    $usercheck->closeCursor();

    if (empty($res1["a"]))
    {
        $log = "genlog.txt";
        $fh = fopen($log, 'a') or die("can't open file");
        $date = date("m/d/Y");
        $stringData = "Database write failed at ".time()." -- .
 Data entered was: ".$username."
";
        fwrite($fh, $stringData);
        fclose($fh);
        die('ERROR: Username does not exist.');
    }   
    else
    {
        $n = 1;
        while($n != 0)
        {
            $randstring = "live_".RandomString();
            echo $randstring;
            $req0 = mysql_query("SELECT COUNT(*) AS n, streamer_id FROM streamer_ids WHERE streamer_id=".$randstring."",$con);
            $res0 = $req0->fetch();
            $req0->closeCursor();
            $n = $res0["n"];
        }
        $temp = mysql_query("INSERT INTO streamer_ids (username,streamer_id,premium) VALUES('".$username.",".$randstring.",0')",$con);
        $temp->closeCursor();
    }
}
else
echo "Wrong:".$username.""
?>
  • 写回答

1条回答 默认 最新

  • doushi5752 2010-12-05 05:59
    关注

    Try this, there were some syntax errors and MySql queries were not done correctly, not sure if you are using a different module, but I change it to work in generic setup.

    <?php
    error_reporting(E_ALL);
    $con = mysql_connect("localhost","root","123");
    if (!$con)
        {
            die('Could not connect: ' . mysql_error());
        }
        mysql_select_db("wp_test", $con);
    
    Function RandomString()
    {
        $characters = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
        for ($i = 0; $i < 20; $i++)
        {
            $randstring.= $characters[rand(0, strlen($characters))];
        }
        return $randstring;
    }
    
    if (isset($_GET["username"]) && !empty($_GET["username"]))
    {
        $username = $_GET['username'];
    
        $result = mysql_query("SELECT COUNT(*) AS a FROM wp_users WHERE user_login='".$username."'",$con);
        $res1 = mysql_fetch_assoc($result);
    //    $usercheck->closeCursor();
    
        if (empty($res1["a"]))
        {
            $log = "genlog.txt";
            $fh = fopen($log, 'a') or die("can't open file");
            $date = date("m/d/Y");
            $stringData = "Database write failed at ".time()." -- .
     Data entered was: ".$username."
    ";
            fwrite($fh, $stringData);
            fclose($fh);
            die('ERROR: Username does not exist.');
        }
        else
        {
            $n = 1;
            while($n != 0)
            {
                $randstring = "live_".RandomString();
                echo $randstring;
                $result = mysql_query("SELECT COUNT(*) AS n, streamer_id FROM streamer_ids WHERE streamer_id='".$randstring."'",$con);
                $res0 = mysql_fetch_assoc($result);
    //            $req0->closeCursor();
                $n = $res0["n"];
            }
            $temp = mysql_query("INSERT INTO streamer_ids (username,streamer_id,premium) VALUES('".$username."', '".$randstring."',0)",$con);
    //        $temp->closeCursor();
        }
    }
    else
    echo "Wrong:".$username.""
    ?>
    
    评论

报告相同问题?

悬赏问题

  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥20 测距传感器数据手册i2c