2

これが私のコードです。現時点では、フォームはあらゆる種類の入力 (文字列と整数) を受け取ります。たとえば、どのように指定できますか:$_POST['a']が文字の場合、 $_SESSION['a']0 に設定しますか?

今のところ、フォームに手紙を渡すと、$_SESSION「更新」をクリックすると手紙が渡されて記録されます。フォームで文字を無視して0に設定する必要があります。

index.php はこれと同じファイルです

ありがとう!

<?php
session_start();
if ( isset($_POST["a"]) && isset($_POST["b"]) && isset($_POST["c"]) ) {
    $_SESSION['a'] = $_POST['a'];
    $_SESSION['b'] = $_POST['b'];
    $_SESSION['c'] = $_POST['c'];
    header( 'Location: index.php' ) ;
    return;
}
?>

// ( some code... )

$a = isset($_SESSION['a']) ? $_SESSION['a'] : '0';
$b = isset($_SESSION['b']) ? $_SESSION['b'] : '0';
$c = isset($_SESSION['c']) ? $_SESSION['c'] : '0';   

// ( some code...)

<form method="post">
    <p><input type="text" name="a" size="3" value="<?php echo(htmlentities($a)); ?>"> A </p>
    <p><input type="text" name="b" size="3" value="<?php echo(htmlentities($b)); ?>"> B </p>
    <p><input type="text" name="c" size="3" value="<?php echo(htmlentities($c)); ?>"> C </p>
    <p><input type="submit" value="Update">
</form>
4

1 に答える 1

3

私は通常ctype_*関数を使用して、PHP で文字列の文字型を判別します。この場合、ctype_alpha .

if (ctype_alpha($_POST['a'])) { 
    $_SESSION['a'] = 0;
}
于 2013-02-11T20:34:06.073 に答える