我对表单有疑问。我创建了一个带有动作的表单,表单里面有两个按钮,一个提交表单,另一个提交但不同的php文件,我该怎么做?这是我的代码:
<form action="viewmember.php">
<input type="text" value="Clyde">
<input type="submit" value="View" id="viewbutton">
<input type="submit" value="Delete" id="deleteButton">
</form>
viewbutton工作,但我想要发生的是当我点击deletebutton它将提交到不同的php文件让我们说delete.php。如果你问为什么我在表单中包含了addmember按钮,那么当我点击deletebutton时我也可以获得值为“Clyde”的textfield值。
答案 0 :(得分:6)
给它起个名字:
<form action="viewmember.php" method="POST">
<input type="text" value="Clyde">
<input type="submit" name="action" value="Add" id="viewbutton">
<input type="submit" name="action" value="Delete" id="deleteButton">
</form>
然后
<?php
$action = $_POST['action'];
if($action == "Add")
{
// add
}
elseif($action == "Delete")
{
// delete
}
?>
答案 1 :(得分:1)
你需要一些javascript魔法。
$(function(){
var form = $('form').on('submit', function(){
return false;
});
$('input[value="View"]', form).on('click', function(){
form.attr('action', 'viewmember.php')[0].submit();
});
$('input[value="Delete"]', form).on('click', function(){
form.attr('action', 'deletemember.php')[0].submit();
});
});
以上都是未经测试的,但从理论上讲,它应该可行。
答案 2 :(得分:0)
HTML表单始终有一个操作。如果您需要从一个表单提供不同的操作,请使用控制器调度程序,它会相应地读取按钮值和进程。
答案 3 :(得分:0)
你可以做的,而不是有两个单独的PHP文件,有一个PHP文件。然后在那个文件里面你有:
<?php if (isset($_POST['View'])) { Do all your view stuff here } ?>
然后你可以做另一个:
<?php if (isset($_POST['Delete'])) { Do delete stuff here } ?>
请记住,您需要在表单中添加一个方法,POST或GET。在这种情况下,您需要使用POST。
这就是我猜的一种做法。
答案 4 :(得分:0)
您可以添加它。会起作用
import { Component, OnInit } from '@angular/core';
import { WmApiService } from '../wm-api.service';
import { Router } from "@angular/router";
declare const gapi: any;
@Component({
selector: 'app-login',
templateUrl: './login.component.html',
styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
constructor(private _wmapi: WmApiService, private router: Router) { }
public auth2: any;
userProfile: any;
user: any;
// Initalise Google Sign-On
// NOTE: Currently registered to http://localhost:4200/ - will need to change when on server to final URL
public googleInit() {
gapi.load('auth2', () => {
this.auth2 = gapi.auth2.init({
client_id: '933803013928-4vvjqtql0nt7ve5upak2u5fhpa636ma0.apps.googleusercontent.com',
cookiepolicy: 'single_host_origin',
scope: 'profile email',
prompt: 'select_account consent'
});
this.attachSignin(document.getElementById('googleBtn'));
});
}
// Log user in via Google OAuth 2
public attachSignin(element) {
this.auth2.attachClickHandler(element, {},
(googleUser) => {
// Get profile from Google
let profile = googleUser.getBasicProfile();
// Save user to the API until changed
this._wmapi.tempuser = profile.getName().match(/\(([^)]+)\)/)[1];
this._wmapi.tempuseravatar = profile.getImageUrl();
this._wmapi.tempuserfullname = profile.getName();
this._wmapi.tempuseremail = profile.getEmail();
// Log the user in
this._wmapi.userloggedin = 1;
// Redirect to dashboard
this.router.navigate(['/dashboard']);
}, (error) => {
alert(JSON.stringify(error, undefined, 2));
// To get auth token - googleUser.getAuthResponse().id_token;
// To get user id - profile.getId();
});
}
ngAfterViewInit(){
this.googleInit();
}
ngOnInit() {
}
}