Как передать значение PHP из одного файла в другой через скрипт Java
Я работаю с Concrete-5 CMS, у меня проблема с передачей представления значения в контроллер. В моем приложении я использую следующий код для отображения роли сотрудника.
foreach($rd as $data){
echo "<tr><td>".$data[role_name]."</td><td>".$data[role_description]."</td><td><a href=".$this->action('edit', $data['role_id']).">Edit</a></td><td>".$ih->button_js(t('Delete'), "deleteRole('".$data['role_id']."')", 'left', 'error')."</td></tr>";
}
<input type="hidden" name="rno" id="rno" />
сценарий:
$delConfirmJS = t('Are you sure you want to remove this Role?'); ?>
<script type="text/javascript">
function deleteRole(myvar) {
var role = document.getElementById('rno');
role.value = myvar;
if (confirm('<?php echo $delConfirmJS ?>')) {
$('#rolelist').submit();
//location.href = "<?php echo $this->url('/role/add_role/', 'delete', 'myvar')?>";
}
}
</script>
HTML-код Я сделал операцию редактирования, передавая role_id через действие редактирования. Но, в случае удаления, я должен запросить конформацию, поэтому я использую java-скрипт для его согласования и вызываю местоположение href и все.
Но я не знаю, как передать role_id в скрипт и передать моему контроллеру. как решить эту задачу?
спасибо Кумар
4 ответа
Вы можете передать значение на сервер с помощью вызовов ajax. Смотрите следующий код. Здесь мы используем поле подтверждения, чтобы получить подтверждение пользователя.
function deleteEmployee(empId){
var confirm=confirm("Do you want to delete?");
if (confirm)
{
var url = "path/to/delete.php";
var data = "emp_id="+empId;
$.ajax({
type: "POST",
url: "otherfile.php",
data: data ,
success: function(){
alert("Employee deleted successfully.");
}
});
}
}
В delete.php вы можете взять идентификатор сотрудника, используя $_POST['emp_id']
Я бы добавил дополнительную переменную в адрес для удаления ссылки. Предпочтительно идентификатор строки, которую нужно удалить.
Вы можете сделать это легко с помощью jquery
var dataString = 'any_variable='+ <?=$phpvariable?>;
$.ajax({
type: "POST",
url: "otherfile.php",
data: dataString,
success: function(msg){
// msg is return value of your otherfile.php
}
}); //END $.ajax
Я не знаю Бетон-5 CMS. Но я даю вам общую идею
Я думаю, вы используете какую-то кнопку, на которую пользователи могут нажать, если они хотят удалить роль.
<td>".$ih->button_js(t('Delete'), "deleteRole('".$data['role_id']."')", 'left', 'error')."</td>
Мое предложение,
добавлять onClick
на кнопкуonClick="deleteEmployee(roleId);"
// roleId - динамический идентификатор роли с помощью цикла
Честно говоря, чувак, я не знаю, как ты добавишь это к своей кнопке, что, я думаю, наверняка найдется способ просто добавить это к существующему html.
А теперь просто используйте функцию Sajith
// Sajith's function here
function deleteEmployee(empId){
var confirm=confirm("Do you want to delete?");
if (confirm){
var url = "path/to/delete.php";
var data = "emp_id="+empId;
$.ajax({
type: "POST",
url: "otherfile.php",
data: data ,
success: function(){
alert("Employee deleted successfully.");
}
});
}
}