Хорошо, поэтому я экспериментирую с HTML5 и сделал простое приложение «рисование» в Javascript, чтобы рисовать, где мышь пользователя находится на экране. Работает отлично.
Затем я хотел сохранить координаты в файл. В моей программе уже был массив координат x и массив координат y из кода Javascript.
Когда пользователь нажимает кнопку, onClick вызывает функцию в Javascript, которая использует jQuery, как в верхнем ответе здесь Как получить данные функции JavaScript в переменную PHP пытается передать это в файл php для сохранения.
Однако это не работает. Должен ли я передавать данные обратно в исходный php-документ, содержащий холст? Если да, то как мне заставить его делать код для сохранения, когда PHP запускается, когда документ загружается?
КОД:
Хорошо, это в исходном файле php, который содержит HTML для веб-страницы, включая холст. Вот соответствующая кнопка сохранения:
<button type="button" onclick="saveDrawing()" id="saveButton">Save</button>
Это вызывает следующее в отдельном файле JS
function saveDrawing(){
// First check that not drawing and have data
if (!readyToDraw && clickX!=null){
// If ready then pass back to the PHP file the data
$url = 'file_save_test.php';
$.get($url, {x_coords: getXCoords(), y_coords: getYCoords()});
}
else {
alert("Please add some coordinate points and press Finish before saving");
}
}
а file_save_test.php содержит только следующее
<?php
// retrieve data from the JS
$buffer_data['x_coords'] = $_GET['x_coords'];
$buffer_data['y_coords'] = $_GET['y_coords'];
$x_s = $_GET['x_coords'];
$y_s = $_GET['y_coords'];
// first want to open a file
$file_name = "data_test.txt";
$file_handler = fopen($file_name, 'w');
// now to loop through arrays and write!
/*for ($i = 0; $i < sizeof($x_s); i++){
fwrite($file_handler, "$x_s[i], ");
fwrite($file_handler, "$y_s[i]\n");
} */
fclose($file_handler);
?>