我需要从php文件中获取字符串有人知道我该怎么做?
My.php写入和读取一个文件的内容
<?php
$dir = '/var/www/devData/test';
// create new directory with 777 permissions if it does not exist yet
// owner will be the user/group the PHP script is run under
if ( !file_exists($dir) ) {
mkdir ($dir, 0777);
}
if (isset($_POST['data'])) {
$stringData = $_POST['data'];
$file = "/var/www/devData/test/ciao.txt";
$fh = fopen($file, 'r+') or die("can't open file");
fwrite($fh, $stringData);
$theData = fread($fh, filesize($myFile)); //this is the string that i have to pass
fclose($fh);
return $theData;
}
?>
my.js scrpt使用methode获取从我的php文件中检索strng
function addLabelCustom_options() {
var select = document.getElementById('label_custom');
$.get("JS/foo.php", function(result){ alert(result) }, "json");
/* $.ajax({
url:'/var/www/devData/test/ciao.txt',
success: function (data){
//parse ur data
//you can split into lines using data.split('\n')
//use regex functions to effectivley parse
var label_parsed = data.splitCSV();
select.options[0] = new Option("-- Select Label --",0);
var label_sort = new Array();
for (var i=0; i<label_parsed.length-1; i++)
label_sort.push(label_parsed[i][1]);
label_sort.sort();
for (var j=0; j<label_sort.length-1; j++)
select.options[j+1] = new Option(label_sort[j],j+1);
}
});
*/
}
我只需要获得字符串$ theData的信息 看起来如果我不回溯任何字符串......
答案 0 :(得分:1)
<?php
$dir = '/var/www/devData/test';
// create new directory with 777 permissions if it does not exist yet
// owner will be the user/group the PHP script is run under
if ( !file_exists($dir) ) {
mkdir ($dir, 0777);
}
if (isset($_POST['data'])) {
$stringData = $_POST['data'];
$file = "/var/www/devData/test/ciao.txt";
$fh = fopen($file, 'r+') or die("can't open file");
fwrite($fh, $stringData);
$theData = fread($fh, filesize($myFile)); //this is the string that i have to pass
fclose($fh);
echo $theData; // <-- ECHO
}
?>
您必须输出数据,而不是返回数据。就是这样,回应它。如果字符串尚未进行json编码,请使用echo json_encode($theData);
答案 1 :(得分:0)
在回显php函数中的内容(echo $ theData;)后,尝试以下jquery代码
$.ajax({
url:JS/foo.php,
success:function(result){ alert(result) }, "json"),
error:function(alert('Not Completed'))
};
并检查控制台中的响应以检查是否有任何错误。您可以在firefox中查看F12的控制台
答案 2 :(得分:0)
伙计们我解决了这个问题,就像每次都是愚蠢的事情,每当我明白我真的很蠢,但是我发布了解决方案。
第一个用于创建目录并存储在文件中的php文件
<?php
$dir = '/var/www/devData/test';
// create new directory with 777 permissions if it does not exist yet
// owner will be the user/group the PHP script is run under
if ( !file_exists($dir) ) {
mkdir ($dir, 0777);
}
if (isset($_POST['data'])) {
$stringData = $_POST['data'];
$file = "/var/www/devData/test/ciao.txt";
$fh = fopen($file, 'r+') or die("can't open file");
fwrite($fh, $stringData);
$theData = fread($fh, filesize($file));
fclose($fh);
echo json_encode($theData);
}
?>
为了阅读这个问题,我创建了另一个文件php
<?php
$file = "/var/www/devData/test/ciao.txt";
$fh = fopen($file, 'r') or die("can't open file");
$theData = fread($fh, filesize($file));<--- was the error before i used Myfile but that variable wasn't declare and was empty :) lol
fclose($fh);
echo json_encode($theData);
?>
感谢大家!!