我是 PHP 和 HTML 的新手,正在嘗試以下操作。下面的 html 代碼顯示資料庫中的資料并將日歷添加為行。日歷默認顯示當前日期。更改時,應在 url 中傳遞更改日期。
<?php
include 'connect.php';
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Update Clients</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
<script src="/scripts/snippet-javascript-console.min.js?v=1"></script>
</head>
<body>
<div class="container my-5">
<table class="table">
<thead>
<tr>
<th scope="col">id</th>
<th scope="col">Name</th>
<th scope="col">Start Date</th>
<th scope="col">Interest</th>
<th scope="col">Date</th>
<th scope="col">Days</th>
</tr>
</thead>
<tbody>
<?php
$sql = "SELECT id, name, DATE_FORMAT(startDate, '%Y-%m-%d') AS startDate, interest, (SELECT COUNT(1) FROM clientdata c WHERE clientId = id) AS days
FROM `clients` WHERE now() BETWEEN startdate and enddate ORDER BY id";
$result = mysqli_query($con, $sql);
if ($result) {
while ($row = mysqli_fetch_assoc($result)) {
$id = $row['id'];
$name = $row['name'];
$startdate = $row['startDate'];
$interest = $row['interest'];
$days = $row['days'];
$todaydate = date("Y-m-d");
echo ' <tr>
<th scope="row">' . $id . '</th>
<td>' . $name . '</td>
<td>' . $startdate . '</td>
<td>' . $interest . '</td>
<td> <input type="date" id = "changeDate" value=' . $todaydate . '></input></td>
<td>' . $days . '</td>
<td>
<button onchange="myFunction()"><a href="insertClientData.php?id='.$id.'&name='.$name.'&todaydate='. $todaydate .'" > Update </a></button>
</td>
</tr>';
}
}
?>
</tbody>
</table>
</div>
<div class="container my-5">
<table> <tr>
<button class="btn btn-primary my-3"><a href="main.php" class="text-light"> Home Page </a></button>
</tr>
</table>
</div>
</body>
</html>
需要在日期欄位中顯示今天的日期,當點擊更新 URL 時需要找到新選擇的日期。更新按鈕應與所選日期一起傳遞
<button class="btn btn-primary" onchange="myFunction()"><a href="insertClientData.php?id=.$id.&name=.$name.&todaydate=. $todaydate" class="text-light"> Update </a></button>
uj5u.com熱心網友回復:
由于您只想通過 GET 呼叫 PHP(insertClientData.php),因此我洗掉了 PHP 代碼并以純 HTML 和 JS 的形式為您提供示例。(理解代碼后可以通過添加PHP陳述句進行修改)
訣竅是使用 jqueryclosest并find通過(在本例中為 xid、xname 和 changeDate)定位行的資料classes,然后呼叫 PHPwindow.location.href
所以代碼是
<script
src="https://code.jquery.com/jquery-1.12.4.js"
integrity="sha256-Qw82 bXyGq6MydymqBxNPYTaUXXq7c8v3CwiYwLLNXU="
crossorigin="anonymous"></script>
<table border=1>
<tr>
<th class=xid scope="row">123</th>
<td class=xname>Mary Roberson</td>
<td><input type="date" class = "changeDate" value='2022-11-22'></input></td>
<td>
<button class="btn btn-primary">Update</button>
</td>
<tr>
<th class=xid scope="row">333</th>
<td class=xname>Peter Pen</td>
<td><input type="date" class = "changeDate" value='2022-11-22'></input></td>
<td>
<button class="btn btn-primary">Update</button>
</td>
</table>
<script>
$('.btn-primary').click(function(){
var xdate=($(this).closest('tr').find('.changeDate').val());
var xid=($(this).closest('tr').find('.xid').text());
var xname=($(this).closest('tr').find('.xname').text());
window.location.href="insertClientData.php?id=" xid "&name=" xname "&todaydate=" xdate;
});
</script>
請嘗試一下,你會發現它應該可以正常作業,然后你可以通過在適當的地方添加PHP陳述句來修改它
uj5u.com熱心網友回復:
當您提交表單時,您需要使用“GET”方法將每一行包含在表單元素中,引數將被編碼到頁面,并且可以通過 url 引數訪問變數。
我不確定您為什么嘗試在底部加入 href 鏈接。如果你想在 URL 中傳遞其他資訊,你可以使用隱藏的輸入欄位來自動填充你的回圈。
<?php
include 'connect.php';
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Update Clients</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css">
<script src="/scripts/snippet-javascript-console.min.js?v=1"></script>
</head>
<body>
<div class="container my-5">
<table class="table">
<thead>
<tr>
<th scope="col">id</th>
<th scope="col">Name</th>
<th scope="col">Start Date</th>
<th scope="col">Interest</th>
<th scope="col">Date</th>
<th scope="col">Days</th>
</tr>
</thead>
<tbody>
<?php
$sql = "SELECT id, name, DATE_FORMAT(startDate, '%Y-%m-%d') AS startDate, interest, (SELECT COUNT(1) FROM clientdata c WHERE clientId = id) AS days
FROM `clients` WHERE now() BETWEEN startdate and enddate ORDER BY id";
$result = mysqli_query( $con, $sql );
if ( $result ) {
while ( $row = mysqli_fetch_assoc( $result ) ) {
$id = $row[ 'id' ];
$name = $row[ 'name' ];
$startdate = $row[ 'startDate' ];
$interest = $row[ 'interest' ];
$days = $row[ 'days' ];
$todaydate = date( "Y-m-d" );
echo '
<form action="" enctype="multipart/form-data" method="get">
<tr>
<th scope="row">' . $id . '</th>
<td>' . $name . '</td>
<td>' . $startdate . '</td>
<td>' . $interest . '</td>
<td> <input type="date" id = "changeDate" value=' . $todaydate . '></input></td>
<td>' . $days . '</td>
<td>
<button type="submit" ></button>
</td>
</tr>
</form>
';
}
}
?>
<br>
</tbody>
</table>
</div>
<div class="container my-5">
<table>
<tr>
<button class="btn btn-primary my-3">
<a href="main.php" class="text-light"> Home Page </a>
</button>
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/537874.html
標籤:PHP网页格式数据库
