-5

まずこれを持っています。

<form method="post" action="<? echo $_SERVER['PHP_SELF']; ?>">
<input type="text" name="varenummer" id="varenummer" onkeyup="gethint(this.value)" hidden=true style="display:none">
</form>

そして後で私はこれを持っています

if (isset($_POST['tryk'])) {
$pri = mysql_real_escape_string($_POST['pri']);
$sek = mysql_real_escape_string($_POST['sek']);
$dat1 = mysql_real_escape_string($_POST['dat1']);
$dat2 = mysql_real_escape_string($_POST['dat2']);
$dat3 = mysql_real_escape_string($_POST['dat3']);
$dato = $dat1 . "-" . $dat2 . "-" . $dat3;
$tek = mysql_real_escape_string($_POST['tek']);
$id1 = mysql_real_escape_string($_POST['id1']);
$varenummer = mysql_real_escape_string($_POST['varenummer']);

$insert = mysql_query("insert into Servicetxt (ID2, Servicenum, PriServiceTxt,
SekServiceTxt, Teknikker, Dato, Varenum) VALUES ('NULL', '$id1', '$pri', '$sek', '$tek',
'$dato', '$varenummer')")or die(mysql_error());    
}

問題は、送信ボタン 'tryk' が ajax ページに配置されていることです。ボタンを押さずに、isset($_POST['tryk']) の前に textbox(varenummer) の値を php 変数として保存するにはどうすればよいですか?

4

1 に答える 1

1

PHPはサーバー側のプログラミング言語であり、JavaScript(jQuery)はクライアント側で実行されます。

PHPを使用してJSを作成することはできますが、JSはPHPに影響を与えることはできません(AJAXなどを介する場合を除く)。

あなたができることは使用することですSESSION

これがサンプルコードです。

Jsコード

$("#varenummer").change(function(e)
{
    e.preventDefault();
    var data_posts = $(this).val();

    // Send Ajax request to backend.php
    $.post("/backend.php", {"varenummer": data_posts});
});

PHPコード

<?php
    // do any authentication first, then add POST variable to session
    $_SESSION['varenummer'] = $_POST['varenummer'];
?>

また、 SUPER-GLOBAL自体と同様$_SESSIONに、そのセッション変数をグローバルに使用できます。

于 2013-01-21T12:14:56.440 に答える