前提・実現したいこと
冒頭で設置したフォームのテキスト部分に、後半のif文を満たすと出てくる変数をvalue表示したいのですができるでしょうか?
$_POST[name] = $変数 →何も起こらず
もう一度nameとvalueを下に記述 valueに変数を代入すればいけるのでは→エラー
変数を代入する書式?は調べてわかりましたが変数が生まれたタイミングで書こうとしてもうまくいきません
PHP
1<!DOCTYPE html> 2<html lang="ja"> 3<head> 4 <meta charset="UTF-8"> 5 <title>mission_3-4</title> 6</head> 7<body> 8 9 <form action="" method="post"> 10 <input type="text" name="namae" value="名前"> 11 <input type="text" name="comment" value="コメント"> //ここに入れたい 12 <input type="submit" name="sousin"> 13 </form> 14 15 <form action="" method="post"> 16 <input type="text" name="delete" value="番号"> 17 <input type="submit" name="削除" value="削除"> 18 </form> 19 20 <form action="" method="post"> 21 <input type="text" name="edit" value="番号"> 22 <input type="submit" name="edit" value="編集"> 23 </form> 24 25<?php 26 $filename="mission_3-4.txt"; 27 $namae= ($_POST["namae"]); 28 $comment = ($_POST["comment"]); 29 $date = date("Y年m月d日 H:i:s"); 30 $delete = ($_POST[delete]); 31 32 33 if (file_exists($filename)) { 34 $num = count(file($filename))+1; 35 } else { 36 $num = 1; 37 } 38 39$format = $num."<>".$namae."<>".$comment."<>".$date; 40 41 if ( !empty($namae)||!empty($comment) ){ 42 $ret_array = file(filename); 43 $fp = fopen($filename,'a+'); 44 fwrite($fp, $format.PHP_EOL); 45 fclose($fp); 46 } 47 48 if( !empty($delete) ){ 49 $ret_array=file($filename); 50 $fp2 = fopen($filename,'w'); 51 for($a=0; $a < count($ret_array); $a++){ 52 if($a == $delete -1){ 53 continue; //スキップ 54 } 55 fwrite($fp2, $ret_array[$a]); 56 } 57 fclose($fp2); 58 } 59 60//編集 61 if(!empty ($edit)){ 62 $ret_array=file($filename); 63 for($i=0; $i<count($ret_array);$i++){ 64 $ex=explode("<>",$ret_array[$i]); 65 if($i==$edit-1){ 66 $editbango=$ex[0]; 67 $editnamae=$ex[1]; // 68 $editcomment=$ex[2]; // 69 //この2つを冒頭のnamae,commentにvalueで入れたい 70 } 71 } $_POST[namae]=$editnamae //試したこと① 72 <input type="text" name="namae" value="php echo $editnamae ?>"> 73 <input type="text" name="comment" value="php echo $editcomment ?>"> //試したこと② 74 //error 75 } 76 $filename="mission_3-4.txt"; 77 $lines = file($filename,FILE_IGNORE_NEW_LINES); 78 foreach($lines as $line){ 79 $lin = explode("<>", $line); 80 print $lin[0]." ".$lin[1]." ".$lin[2]." ".$lin[3]."<br/>"; 81 } 82 83?> 84</body> 85</html>
試したこと
質問をあさりましたが、先に出ているフォームをいじるスタイルのものが見つかりませんでした
かなり面倒くさいスタイルをとっているのでしょうか
回答2件
あなたの回答
tips
プレビュー