I have a website hosted on server, now what I want is to run a .php script (Also located on the same server) when someone presses the submit button in the website.
Following is the ajax code
$.ajax({url: "/test.php",
success: function(response){
console.log("Success",response);
}
});
My test.php consists of
<?php
//exec('sudo -u www-data python /var/www/html/test.py');
echo "PHP Script Ran";
mkdir("/var/www/html/test", 0700);
?>
When I navigate to ip_address/test.php, the echo
message is displayed correctly but the mkdir
command doesn't seem to be executed as there is no folder created in my server's directory.
Also I want to know, how can I run this test.php script when someone presses the submit button in my website.
The Javascript code is
var $ = jQuery;
var timestamp = Number(new Date());
var form = document.querySelector("form");
var database = firebase.database();
form.addEventListener("submit", function(event) {
var ary = $(form).serializeArray();
var obj = {};
for (var a = 0; a < ary.length; a++) obj[ary[a].name] = ary[a].value;
console.log("JSON",obj);
firebase.database().ref('users/' + timestamp).set(obj);
database.ref('users/' + timestamp).once('value').then(function(snapshot) {
console.log("Received value",snapshot.val());
$.ajax({
url: "/test.php",
success: function(response){
console.log("Success",response);
}
});
});
});
Any help on this would be much appreciated. Thanks
In this case it's recommended to use mkdir
within try...catch
function and capture the error if it's the case.
On the other hand mkidr
will return a boolean value: true
if the directory creation was successful or false
in the case of a failure.
1.version
try {
mkdir("/var/www/html/test", 0700, true);
} catch ($ex Exception) {
echo $ex->getMessage();
}
2.version
if (!mkdir("/var/www/html/test", 0700, true)) {
echo 'Failed to create folder...';
}
If mkdir
cannot create the folder two things you need to check: if the folder exist and if it has the right permissions. By this i mean if the user group is set to apache (because apache, through web browser is executing the mkdir command) and second if apache ( www-data
) has the necessary permissions to execute this command.
修改服务器中的php.ini ,标记disable_functions =“...”并确保mkdir不包括在列表中。
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.