我正在尝试使用PHP和cURL执行DELETE http请求.
我已经阅读过如何在很多地方做到这一点,但似乎没有什么对我有用.
我是这样做的:
public function curl_req($path,$json,$req)
{
$ch = curl_init($this->__url.$path);
$data = json_encode($json);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $req);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Content-Length: ' . strlen($data)));
$result = curl_exec($ch);
$result = json_decode($result);
return $result;
}
Run Code Online (Sandbox Code Playgroud)
然后我继续使用我的功能:
public function deleteUser($extid)
{
$path = "/rest/user/".$extid."/;token=".$this->__token;
$result = $this->curl_req($path,"","DELETE");
return $result;
}
Run Code Online (Sandbox Code Playgroud)
这给了我HTTP内部服务器ERROR.在我的其他函数中使用与GET和POST相同的curl_req方法,一切顺利.
那么我做错了什么?
我有一个页面想要启动 2 个不同的模式窗口。一种用于创建新用户,另一种用于编辑现有用户。
我在可点击的表格中显示现有用户,并链接到我的模式,#edit如下所示:
<tr data-id="<?php echo $value['id'];?>" data-toggle="modal" data-target="#edit" class="open-edit">
Run Code Online (Sandbox Code Playgroud)
这将打开我的 Bootstrap 模式对话框:
<div class="modal fade" id="edit">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
I ommited the rest of the code.. I grab this modal on its id="edit".
Run Code Online (Sandbox Code Playgroud)
这就像我想要的那样 - 当单击表条目时,模式对话框将打开,其中包含我创建的表单。
现在我创建了此模式对话框的精确副本,仅更改id="edit"为id="create"并创建了此按钮:
<button class="btn btn-primary btn-me" data-toggle="modal" data-target="#create" >Create user<i class="fa fa-arrow-circle-right"></i></button>
Run Code Online (Sandbox Code Playgroud)
我认为它现在会简单地打开名为 的第二个模式对话框#create,但它会清空屏幕,就像显示模式对话框时一样 - 但不显示任何模式窗口/对话框。
谁能帮助我理解为什么会发生这种情况或者我做错了什么?
编辑:抱歉,我太累了,在这里编写代码时实际上可以正常工作!跆拳道:D
我在同一页面上有许多不同的下拉列表,并且在其中一个发生更改时不想执行 AJAX 请求。
如果我这样做,它会起作用:
$(document).on('change', '#changeresponsibleuser', function(){
var user = $(this).val();
var partnerid = $(this).attr('name');
$.ajax({
type: "POST",
url: "resources/dialogs/editResponsibleUser.php",
data: {user: user,
partnerid: partnerid},
success: function(msg){
$('.productmessage').html(msg).hide().fadeIn(500).fadeOut(4000);
},
});
});
Run Code Online (Sandbox Code Playgroud)
但这会欺骗我在页面上的所有下拉框。我不想做这样的事情:
$(document).ready(function(){
$("#changeresponsibleuser").on('change',function(){
var user = $(this).val();
var partnerid = $(this).attr('name');
$.ajax({
type: "POST",
url: "resources/dialogs/editResponsibleUser.php",
data: {user: user,
partnerid: partnerid},
success: function(msg){
$('.productmessage').html(msg).hide().fadeIn(500).fadeOut(4000);
},
});
});
});
Run Code Online (Sandbox Code Playgroud)
所以它只监听具有该确切 ID 的下拉列表。但它不起作用,不会触发 on change 事件。
如何仅在#changeresponsibleuser 更改时触发事件?
标记如下所示:
<select id="changeresponsibleuser" name="2" class="responsible2 form-control form-group">
<option name="user" value="36" selected="selected">One user</option> …Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的对象:
stdClass Object
(
[data] => stdClass Object
(
[users] => stdClass Object
(
[831C7119-FAEF-49AF-B95B-50FB492B4ACB] => stdClass Object
(
[lastName] => somename
[username] => email@email.com
[userExtId] => 831C7119-FAEF-49AF-B95B-50FB492B4ACB
[fullName] => somename somename
[firstName] => somename
[displayName] => bla bla bla
[extId] => 831C7119-FAEF-49AF-B95B-50FB492B4ACB
[password] => 12345678
)
Run Code Online (Sandbox Code Playgroud)
是否可以访问say $ object-> data-> users-> lastname?
编辑:
function objectToArray($d) {
if (is_object($d))
$d = get_object_vars($d);
return is_array($d) ? array_map(__METHOD__, $d) : $d;
}
Run Code Online (Sandbox Code Playgroud) 对于可怕的标题抱歉,让我试着解释一下.
我写了一堆小函数,它们返回true或false.
validateName()
validateEmail()
validateAddr()
validateBirtd()
validateUsername()
Run Code Online (Sandbox Code Playgroud)
现在我循环使用CSV文件导入的大量数据,并检查哪些数据有效(返回true或false).
我是这样做的:
if (validateName($data[0]) == true AND validateEmail($data[1]) == true AND validateAddr($data[3]) == true AND validateBirtd($data[5]) == true AND validateUsername($data[6])==true) {
// create array to import etc etc
}else{
// create other array with data who failed validation, to show user later..etc etc
}
Run Code Online (Sandbox Code Playgroud)
我的问题是 - 有更聪明的方法吗?是否可以为每个失败的验证创建一个列表?假设3个entrys使validateEmail()函数失败,而10都失败了validateEmail和validateName().
我是否有办法对此进行排序,以便告诉用户"这些托管失败的电子邮件验证"和"这些失败的名称和电子邮件验证".
我想过一次验证一个字段,但是如果一个条目有多个验证错误,我会有重复.
如果有某种逻辑我不知道我能做到这一点,那会很酷
我有一个表单,其中所有输入字段都有一个'required'和'pattern'参数.
我想在输入框的右侧显示一个绿色的小图片,只要输入无效,就向用户显示他已正确填充它.
我想知道它是否可以没有javascript/jquery,而不是纯css/sass?
我在想类似的东西
if input:invalid{
.divonrightofinputbox{
background:url('green.png');
}
}else{
.divonrightofinputbox{
display:none;
}
}
Run Code Online (Sandbox Code Playgroud)
这有可能与sass,如果是这样,怎么样?:)
在此先感谢您的帮助!
我有这样的表格
<form action="index.php" method="get">
<input type="hidden" name="id" value="1">
<input type="hidden" name="order_by" value="">
<button type="submit">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)
它有一些jQuery处理程序来填充" order_by"字段.如果我提交此表格并提交空" order_by",我会得到一个这样的地址:index.php?id=1&order_by=
如果" order_by"为空,我可以在表单提交后获取以下地址的最佳方式是index.php?id=1什么?
php ×5
html ×2
jquery ×2
ajax ×1
css ×1
csv ×1
curl ×1
forms ×1
http ×1
javascript ×1
modal-dialog ×1
object ×1
request ×1
sass ×1
validation ×1