我正在尝试创建管理面板并从数据库中获取一些数据到表,然后才能更改它。
我有2个名为searchForm的表单,使用HTML代码创建,表单在我提交后工作正常。
另一种形式(loadForm)是使用从SQL DB获取数据的php代码动态创建的。 PHP工作正常,我得到所有字段的表,问题是当我提交特定行我不通过post方法获取值。我检查了eith var_dump,结果是0。 我也无法更改表css属性。
请帮忙......
<?php
include("config.inc.php");
$lfname='';
$llname='';
$lphone='';
$lemail='';
$lcity='';
$lphotos='';
$fname='';
$lname='';
$phone='';
$email='';
if(isset($_POST['searchbtn'])){
if (isset($_POST['fname'])) {
$fname=$_POST['fname'];
}
if (isset($_POST['lname'])) {
$lname=$_POST['lname'];
}
if (isset($_POST['phone'])) {
$phone=$_POST['phone'];
}
if (isset($_POST['email'])) {
$email=$_POST['email'];
}
var_dump($phone);
}
if (isset($_POST['savebtn'])){
if (isset($_POST['lfname'])) {
$lfname=$_POST['lfname'];
}
if (isset($_POST['llname'])) {
$llname=$_POST['llname'];
}
if (isset($_POST['lphone'])) {
$lphone=$_POST['lphone'];
}
if (isset($_POST['lemail'])) {
$lemail=$_POST['lemail'];
}
if (isset($_POST['lcity'])) {
$lcity=$_POST['lcity'];
}
if (isset($_POST['lphotos'])) {
$lphotos=$_POST['lphotos'];
}
var_dump($lfname);
}
?>
<html>
<head>
<title>תמונה במתנה</title>
<meta charset="utf-8">
<link href="admin-style.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="jquery.js"></script>
</head>
<body>
<div id="container">
<div id="customer-list">
</div>
<button type="button" id="loadbtn">טען</button>
<div id="search">
<form id="searchForm" action="admin.php" method="post">
שם פרטי:<input type="text" name="fname" id="fname">שם:
שם משפחה:<input type="text" name="lname" id="lname">
טלפון:<input type="text" name="phone" id="phone">
אימייל:<input type="text" name="email" id="email">
<input id="searchForm" type="submit" name="searchbtn" value="חפש" />
</form>
</div>
<div id="serchList">
</div>
<div id="editCustomer">
</div>
</div>
<script type="text/javascript">
$(document).ready(function() {
showNoPicture();
alerta();
function showNoPicture() {
$("#loadbtn").click(function(){
var s = ' <?php
$link = mysql_connect($db_host,$db_user,$db_pass);
if(!$link) die ('Could not connect to database: '.mysql_error());
mysql_select_db($db_name,$link);
mysql_query("SET NAMES 'utf8'");
$i=0;
echo '<table border=1 cellspacing="0" cellpadding="0">';
echo '<tr>';
echo '<td>שם פרטי</td>';
echo '<td>שם משפחה</td>';
echo '<td>טלפון</td>';
echo '<td>אימייל</td>';
echo '<td>עיר</td>';
echo '<td>שעת רישום</td>';
echo '<td>מספרי תמונות</td>';
echo '<td>שמור</td>';
echo '</tr>';
$loadQuery="SELECT * FROM `claients` WHERE `eventreg_pictures` is null";
$result=mysql_query($loadQuery);
while($row= mysql_fetch_array($result)){
$client= $row;
$clients[]=$client;
echo '<tr>';
echo '<form id="loadForm" method="post" action="admin.php">';
echo '<td><input type="text" id="lfname" name="lfname" value="'.$client[1].'"/></td>';
echo '<td><input type="text" id="llname" name="llname" value="'.$client[2].'"/></td>';
echo '<td><input type="text" id="lphone" name="lphone" value="'.$client[3].'"/></td>';
echo '<td><input type="text" id="lemail" name="lemail" value="'.$client[4].'"/></td>';
echo '<td><input type="text" id="lcity" name="lcity" value="'.$client[5].'"/></td>';
echo '<td>'.$client[7].' ';
echo '<td><input type="text" id="lphotos" name="lphotos"/></td>';
echo '<td><input type="submit" id="savebtn" name=savebtn" value-"שמור"/></td>';
echo '</form>';
echo '</tr>';
}
echo '</table>';
?>';
$("#customer-list").html(s);
//$("#customer-list").load('loadClient.php');
});
};
function alerta() {
$("#searchForm").click(function(){
s='<?php $searchEmail; ?>';
$("#customer-list").html(s);
});
};
$(".btnClass").click(function(){
alert('hi');
//$("#customer-list").load('ghfgh.php');
});
});
</script>
</body>
</html>
答案 0 :(得分:4)
修复html代码中的错误:
此处缺少"
:
echo '<td><input type="submit" id="savebtn" name=savebtn" value-"שמור"/></td>';
应该是
echo '<td><input type="submit" id="savebtn" name="savebtn" value="שמור"/></td>';
您有重复的ID,searchForm
使用了两次。
答案 1 :(得分:3)
这可能是你的问题:
while($row= mysql_fetch_array($result)){
$client= $row;
$clients[]=$client;
echo '<tr>';
echo '<form id="loadForm" method="post" action="admin.php">';
在while循环之外获取form
标记。您可能正在创建具有相同ID的多个表单。你也重复了很多ids。