2016-11-29 4 views
2

PHPを使ってmysqlにユーザを追加しなければならないシンプルなコードを作成しましたが、そうではありません。ここにコードがあります。それと間違ってPHPコードを使ってmysqlサーバにユーザを追加するには?

<form action='' method='post'> 
Login: <input type='text' name='login' /> <br/> 
Pass: <input type='pass' name='pass' /> <br/> 
<input type='submit'> 
</form> 

<?php 
$c=mysql_connect('localhost','test','test'); 

$login=$_POST['login']; 
$pass=$_POST['pass']; 

$t="CREATE USER '".$login."'@'localhost' IDENTIFIED BY PASSWORD '".$pass."';"; 

if($login!=NULL){ 
    if($q=mysql_query($t,$c)) 
    { 
    echo "CREATED!"; 
    }else{ 
    die('ERROR: ' . mysql_error()); 
    } 
} 
?> 

Error: Password hash should be a 41-digit hexadecimal number

いただきましたか?

+1

単語を取り出し 'PASSWORD' 。そのキーワードを使用することで、ハッシュを提供していることが示唆されます。 https://dev.mysql.com/doc/refman/5.5/en/create-user.html – aynber

+0

ありがとう、それは動作します – krispi

答えて

0

単語「PASSWORD」を取り出してください。そのキーワードを使用することで、ハッシュを提供していることが示唆されます。

$t="CREATE USER '".$login."'@'localhost' IDENTIFIED BY '".$pass."';"; 
0

これを試してみてください:

dev.mysql.com/doc/refman/5.5/en/create-user.htmlあなたはこれが欲しい

<?php 
$host="localhost"; 
$user="root"; 
$password=""; 
$con = mysqli_connect("localhost","root","","mydb"); 
// Check connection 
if (mysqli_connect_errno()) { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 
?> 

<!DOCTYPE html> 
    <head> 
     <title>MyExample</title> 
    <meta charset="UTF-8"/> 
</head> 
<body> 
    <h1>Create user in MySQL by FORM</h1> 
    <form action="<?php $_SERVER['PHP_SELF']?>" method="POST"> 
     <label for="username">Username</label> 
     <input type="text" id="username" name="username" /> 
     <label for="password">Password</label> 
     <input type="password" id="password" name="password"/> 
     <button type="submit" name="send">Send</button> 
    </form> 
</body> 
</html> 
<?php 
    if (isset($_POST['send'])) { 
     $username = $_POST['username']; 
     $password = $_POST['password']; 
     mysqli_query($con,"CREATE USER '".$username."'@'".$host."' IDENTIFIED BY '".$password."'"); 
     mysqli_close($con); 
    } 
    ?> 
+0

ところで、mysql_connectは非推奨です –

関連する問題