0

私はphpとhtmlを学んでいます。

送信ボタンが押されたときに関数を実行しようとしています。次に、その関数の変数を使用して、フォームのテキスト フィールドを編集します。新しいページに移動せずに...セルフリフレッシュのように。

どうすればいいですか?ありがとう。

JavaScript でこれを行う方法を見たと思いますgetelementbyID。しかし、私はphp経由でそれを行う必要があります。

おそらくこれを説明する簡単な方法は次のとおりです。ボタンが押されると、テキストフィールドにパスワードが自動的に生成されます。

私が使用している機能:

<?
function genkey($length){
    $key = '';
    list($usec, $sec) = explode(' ', microtime());
    mt_srand((float) $sec + ((float) $usec * 100000));

    $possibleinputs = array_merge(range('z','a'),range(0,9),range('A','Z'));

    for($i=0; $i<$length; $i++) {
        $key .= $possibleinputs{mt_rand(0,61)}; }
    return $key;
}
?>
4

4 に答える 4

0

ajaxを使用してphpファイルからパスワードを取得し、テキストフィールドを更新します。

jqueryとajaxを使用したサンプルコード:

$.ajax({
url : 'ajax.php',
type : 'post',
success : function(data){
$('#password_field').val(data)        
}
});
于 2012-05-17T12:21:12.637 に答える
0

関数を使用して別のphpファイル(keygen.php)を作成します。

<?php

$length=$_GET['klength'];

 echo genkey($length);

  function genkey($length){
   $key = '';
  list($usec, $sec) = explode(' ', microtime());
  mt_srand((float) $sec + ((float) $usec * 100000));

$possibleinputs = array_merge(range('z','a'),range(0,9),range('A','Z'));

for($i=0; $i<$length; $i++) {
  $key .= $possibleinputs{mt_rand(0,61)}; }
return $key;
}

?>

このコードをhtmlファイルに追加するより

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"    type="text/javascript"></script>

<script type="text/javascript">
 $(document).ready(function() {

$.get('keygen.php?length=32', function(data) {
alert(data)
 });    

});
</script>
于 2012-05-17T12:32:01.927 に答える
0
$.ajax({
    url: "/your_php_page/function", 

    type: "POST",

    data: "parameters you want to post to the function",

    success: function(data){
        $('#input_field_to_be_updated').val(data);
    }

});

Your php function should be echoed the password which you want to place it in input box.
于 2012-05-17T12:29:03.413 に答える
0

このような:

//    index.php
<?php
function genkey($length){
    $key = '';
list($usec, $sec) = explode(' ', microtime());
mt_srand((float) $sec + ((float) $usec * 100000));

$possibleinputs = array_merge(range('z','a'),range(0,9),range('A','Z'));

for($i=0; $i<$length; $i++) {
    $key .= $possibleinputs{mt_rand(0,61)}; }
return $key;
}

$data = array();
if( !empty($_POST['variable']) ) {
    $data['variable'] = genkey( strlen($_POST['variable']) );
} else {
    $data['variable'] = '';
}
?>
//...HTML...
<form action="" method="POST">
<input name="variable" value="<?=$data['variable']?>">
<input type="submit" value="toPHP">
</form>
//...HTML...
于 2012-05-17T12:30:03.927 に答える