我遇到了一个问题我有一个带有4个导航按钮的网站1是我的个人资料,当你去那里我可以登录然后在那里我有更新个人资料,当我按它它重定向到update.php和它在一个没有头/身体/ navigaiton栏的空白网站只有东西可以改变数据所以我怎么做网站保持不变,在内容区域有更新配置文件的选项现在当我点击更新配置文件他们要更新的选项位于左上角..需要帮助
这是来自update.php的代码
<?php
require_once 'core/init.php';
$user = new User();
if(!$user->isLoggedIn()) {
Redirect::to('index.php');
}
if(Input::exists()) {
if(Token::check(Input::get('token'))) {
$validate = new Validate();
$validation = $validate->check($_POST, array(
'name' => array(
'required' => true,
'min' => 2,
'max' => 50
)
));
if($validation->passed()) {
try {
$user->update(array(
'name' => Input::get('name')
));
Session::flash('home', 'Your details have been updated');
Redirect::to('index.php');
} catch (Exception $e) {
die($e->getMessage());
}
} else {
foreach($validation->errors() as $error) {
echo $error, '<br>';
}
}
}
}
?>
<form action="" method="post">
<div class="field">
<label for="name">Name</label>
<input type="text" name="name" value="<?php echo escape($user->data()->name); ?>">
<input type="submit" value="Update">
<input type="hidden" name='token' value="<?php echo Token::generate()?>">
</div>
</form>
这是我的template.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title><?php echo $title; ?></title>
<link rel="stylesheet" type="text/css" href="Styles/Stylesheet.css" />
</head>
<body>
<div id="wrapper">
<div id="banner">
</div>
<nav id="navigation">
<ul id="nav">
<li><a href="index.php">Domov</a></li>
<li><a href="mojprofil.php">Moj profil</a></li>
<li><a href="#">Pomoč</a></li>
<li><a href="kontakt.php">Kontakt</a></li>
</ul>
</nav>
<div id="content_area">
<?php echo $content; ?>
</div>
<div id="sidebar">
<?php include 'index_2.php'; ?>
</div>
<footer>
<p>Vse pravice pridržane.</p>
</footer>
</div>
</body>
</html>
答案 0 :(得分:1)
最简单的方法是在页面上创建一个按钮,它是一个提交按钮,并为其提供一个唯一的名称,如input name="edit" type="submit" value="Edit Profile"
,其表单操作为php self,然后您可以将整个代码包装为{ {1}}。
然后,如果您点击编辑个人资料按钮,它将重新加载页面,但能够编辑个人资料并仍显示个人资料。