14
14

More than 3 years have passed since last update.

PHP授業(php01〜php05まで)

Last updated at Posted at 2020-12-15

入力フォーム、送信ボタンを作る

フォームに入力されたものは、"namae"という名前になる。
POSTは送る!って意味かな

<form action="./php02.php" method="POST">
your name:<input type="text" name="namae" size="20">
<input type="submit" value="send!">
</form>

↓上のコードでこれができるよ
スクリーンショット 2020-12-15 10.49.10.png

入力された値を呼び出す。データの受け渡し①

namaeを表示させる。

<?php echo htmlspecialchars($_POST['namae']); ?>

htmlspecialcharsってのは、文字化けしないように、セキュリティーのためのものらしい。

入力された値を呼び出す。データの受け渡し②

もし、"namae"にisset(セット)されていたら、こうしてください。

<?php
if (isset($_POST['namae'])){
echo 'Hello, ' . htmlspecialchars($_POST['namae']);
}
?>

結果
スクリーンショット 2020-12-15 11.01.12.png

入力された値を呼び出す。データの受け渡し③

※ここからはフォームも変わるよ
txt→さっきのnamaeの部分。textを示す
no→numberを示す

<form action="./php04.php" method="POST">
text:<input type="text" name="txt" size="20"><br>
number: <input type="text" size="3" value="10" name="no">
<input type="submit" value="send!">
</form>
<?php
if (isset($_POST['txt']) && isset($_POST['no']) && (int)$_POST['no']>0){
  for($i=0;$i<(int)$_POST['no'];$i++){
    echo htmlspecialchars($_POST['txt'] . ' ');
  }
}
?>

訳:
txtとnoが入力されていて、かつnoの数字が0より大きい時、noに入力された数字のぶん、textを出力させる。ってやつ。

入力された値を呼び出す。データの受け渡し④

<form action="./php05.php" method="POST">
URL:<input type="text" name="url" size="20">
<input type="submit" value="memo">
</form>
<?php
if (isset($_POST['url'])){
$url=$_POST['url'] . "\n";
$fp = fopen("php05.dat", "a");
fwrite($fp, $url);
fclose($fp);
}
if (file_exists('./php05.dat')){
$fp = fopen("php05.dat", "r");
while ($line = fgets($fp)) {
echo "$line<br />";
}
fclose($fp);
}
else {
echo 'File not found.';
}
?>

まずはこの部分!

if (isset($_POST['url'])){
$url=$_POST['url'] . "\n";
$fp = fopen("php05.dat", "a");
fwrite($fp, $url);
fclose($fp);
}

訳:
urlという名前の値をもったら、出力。→変数urlとする。
fopenは「file open」の意味。php05.datというファイルを開く→変数fpとする
feriteは書く。つまり、ファイルに書いてけってこと!最後はファイルを閉じる。

次!

if (file_exists('./php05.dat')){
$fp = fopen("php05.dat", "r");
while ($line = fgets($fp)) {
echo "$line<br />";
}
fclose($fp);
}
else {
echo 'File not found.';
}
?>

訳:もしphp05.datがあって
書いてあったら、追加して書いてください。何も書いてなければfile not foundで。
ファイルにどんどんデータが追加されていく。php05.datは自動で作成されて自動でデータが更新されていくイメージ。

↓結果
スクリーンショット 2020-12-15 11.50.16.png

14
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14