フォームから送信ボタンを "紛失"しました。フォームは完璧に機能し、私は何をしたのか分からないが、今はそれがなくなっているのを見る。私はCSSでスタイリングしていました。私はdevToolsでもそれを見つけることができません。おそらくこれは残念ながら面白い質問になるでしょう。ここ は(私が提出があった後、私が書いたCSSの一部のみを置く)のコードですが、私は、私はCSSのみでめちゃめちゃことを確認していない:PHPフォームのサブミットボタンがありません
.table_ocjene {
\t
\t text-align: center;
\t table-layout:fixed;
\t border-collapse: collapse;
width: 100%;
}
.table_ocjene th {
\t word-wrap:break-word;
\t
\t }
.table_ocjene td {
\t width: auto;}
\t
input[type=text] {
\t background: #f9ffd1;
\t width:80%; }
\t \t
<?php
session_start();
if(!isset($_SESSION['username']) || empty($_SESSION['username'])){
header("location: login.php");
exit;
}
require_once "wp-config.php";
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel = "stylesheet" type = "text/css" href= "../../style/welcome.css" >
<link rel="stylesheet" href="../../style/mobile.css" type="text/css" media="only screen and (max-device-width:480px)" />
</head>
<body>
<h1><b><?php $user = $_SESSION['username'];
\t \t echo $user; ?></b>, unesite ocjene .</h1>
<?php //--------------------------- EXECUTE FORM
if($_POST['submit']){
\t \t \t echo " <p > " .$user.", uspješno ste unijeli nove ocjene. </p>";
\t \t $idCount = count($_POST['id']);
\t \t
\t \t \t \t
\t \t \t
\t \t \t for($i=0; $i<$idCount; $i++) {
\t \t \t \t
\t \t \t \t
\t \t \t $mjerenja = $_POST['mjerenja'][$i]; \t
\t \t \t $osnove = $_POST['osnove'][$i];
\t \t \t $digitalna = $_POST['digitalna'][$i];
\t \t \t $id =$_POST['id'][$i];
\t \t \t \t
\t \t \t \t
\t \t \t
\t \t \t \t
\t \t \t //unos ocjena i bodova spajanje na sql preko forme
\t \t \t
\t \t \t $sql_update ="UPDATE ucenici SET mjerenja = '$mjerenja' , osnove = '$osnove' , digitalna = '$digitalna' WHERE id = $id;";
\t \t \t if(mysqli_query($link, $sql_update)){
\t \t \t \t
\t \t \t \t
\t \t \t \t \t } else{
\t \t \t \t \t echo "ERROR: Could not able to execute $sql_update " . mysqli_error($link);
\t \t \t \t \t \t \t }
\t \t \t }
\t \t \t }
//----------------------------------unos ocjena i bodova u listu učenika ----------------------------------------
$sqli = "SELECT * FROM ucenici WHERE struka = 'elektrotehnicar'; ";
if($result = mysqli_query($link, $sqli)){
if(mysqli_num_rows($result)>0){
\t \t
\t \t
echo "<table class = 'table_ocjene'>";
echo "<tr>"; \t \t \t
echo "<th width='35'>Red. br.</th>";
echo "<th>Ime</th>";
echo "<th>Osnove elektrotehnike</th>";
echo "<th>Mjerenja u elektrotehnici </th>";
\t \t \t \t echo "<th>Digitalna elektronika </th>";
echo "</tr>";
\t \t \t
\t \t \t \t \t \t
\t \t \t //Loop for ucenici
while($row = mysqli_fetch_array($result)){
\t \t \t $username = $row['username'];
\t \t \t
\t \t \t
?>
<tr> \t \t \t \t
<td><?php print $row['id'];?> </td>
<td><?php print $row['username']?></td>
<form method = 'post' enctype="multipart/form-data" action = '<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>' >
\t \t \t \t <td><input type = 'text', name = 'osnove[]' value = '<? echo $row['osnove'] ?>' id = 'osnove' class= "textarea"></td>
\t \t \t \t <td><input type = 'text', name = 'mjerenja[]' value = '<? echo $row['mjerenja'] ?>' id = 'mjerenja'class= "textarea"></td>
<td><input type = 'text', name = 'digitalna[]' value = '<? echo $row['digitalna'] ?>' id = 'digitalna'class= "textarea"></td></tr>
\t \t \t \t <input type = 'hidden', name = 'id[]' id = 'id' value = "<?php print $row['id'] ?>" \t \t \t \t \t \t \t \t \t \t
\t \t
\t <?php
\t \t }
\t \t \t
\t \t echo "<input type = 'submit' name = 'submit' value = 'Upload'>";
\t \t echo "</form>";
echo "</table></div>"; \t \t
\t \t }
else{
echo "No records matching your query were found.";
\t }
}
else {
\t \t echo "ERROR: Could not able to execute $sqli. " . mysqli_error($link);
}
\t
mysqli_close($link);
?>
<a href="../../index.php" class="sign_out_ocjene" >Sign Out </a>
</body>
</html>
誰がここにあなたのサーバー側の設定とデータベースが利用できていません。生成された実際のHTML出力を表示してください。 – CBroe
しかし、あなたのPHPスクリプトが_invalid_ HTMLを生成することはすでに明らかです。あなたは 'form'を' tr'の子として持つことはできません。フォームを表のセルの内側に配置するか、または表全体を完全に囲む必要があります。まず、その重大なネスティングエラーを修正します。 – CBroe
ボタンを出力する前にtd/trタグを閉じています。 – Ivar