Делаем таблицу рекордов
Участников: 5
Страница 3 из 3
Страница 3 из 3 • 1, 2, 3
Re: Делаем таблицу рекордов
Может версия php на хостинге роль играет?
GooodWin67- Сообщения : 94
Дата регистрации : 2017-12-27
Re: Делаем таблицу рекордов
В принципе если оставить эти 2 строчки, то на хостинге работает, но как я понимаю это не правильно)
- Код:
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
GooodWin67- Сообщения : 94
Дата регистрации : 2017-12-27
Re: Делаем таблицу рекордов
GooodWin67, это костыль. У меня была похожая проблема, тоже пользовался костылем. Потом где-то нашел баг. Именно в путях.
Возможно порт как-нить прописан лево, я хз.
Возможно порт как-нить прописан лево, я хз.
raingo- Отдел прокрастинации
- Сообщения : 756
Дата регистрации : 2017-12-25
Re: Делаем таблицу рекордов
Покажи код где у тебя написаны пути от сервера к клиенту, и от клиента к серверу. Может найдем ошибку.
raingo- Отдел прокрастинации
- Сообщения : 756
Дата регистрации : 2017-12-25
Re: Делаем таблицу рекордов
Файл js выложил выше.
Вот records.php
Вот records.php
- Код:
<?php
//header('Access-Control-Allow-Origin: *');
//header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept");
ini_set('display_errors','Off');
$score = '';
if (isset($_GET['score']) && $_GET['score']) {
$score = trim(urldecode($_GET['score']));
}
if (isset($_GET['name']) && $_GET['name']) {
if (!$score) {
$score = 0;
}
$name = urldecode($_GET['name']);
writeToLog($score, $name);
} elseif ($score) {
$log = getParsedLog();
echo json_encode($log);
}
/**
* @return array
*/
function getParsedLog()
{
$parsed_log = array();
$data = file_get_contents('log.txt');
$data_strings = explode(PHP_EOL, $data);
$i = 0;
foreach ($data_strings as $string) {
$fields = explode('|', $string);
$parsed_log[$i]['score'] = $fields[0];
$formaated_text = trim($fields[1]);
if($formaated_text != ''){
$parsed_log[$i]['name'] = $formaated_text;
}else{
$parsed_log[$i]['name'] = 'Unnamed';
}
$i++;
}
return $parsed_log;
}
/**
* @param $score string
* @param $name string
*
* @throws Exception
*/
function writeToLog($score, $name)
{
$new_string = $score . '|' . $name . PHP_EOL;
$got_it = false;
$record_table = getParsedLog();
for($i = 0; $i < 10; $i++){
if($score >= $record_table[$i]['score'] && !$got_it){
array_splice($record_table, $i, 0, $new_string);
$got_it = true;
}
else{
$record_table[$i] = $record_table[$i]['score']."|".$record_table[$i]['name'].PHP_EOL;
}
}
if ($result = file_put_contents('log.txt', $record_table)) {
echo('Saved');
} else {
throw new Exception('Error writing to file');
}
}
GooodWin67- Сообщения : 94
Дата регистрации : 2017-12-27
Re: Делаем таблицу рекордов
Ну еще index.html, но там вообще почти ничего нет)
GooodWin67- Сообщения : 94
Дата регистрации : 2017-12-27
Re: Делаем таблицу рекордов
Ладно, я нихрена не понял) php это не для меня.
А что в html, давай, раз уж пошла пляска.
Как пиро говорит пробовал делать?
А что в html, давай, раз уж пошла пляска.
Как пиро говорит пробовал делать?
- Код:
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
raingo- Отдел прокрастинации
- Сообщения : 756
Дата регистрации : 2017-12-25
Re: Делаем таблицу рекордов
- Код:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="viewport" content="width=device-width,user-scalable=no"/>
<title>Test2</title>
</head>
<body>
<script type="text/javascript" src="point.min.js"></script>
<script src="jquery-3.2.1.min.js" type="text/javascript"></script>
<script type="text/javascript" src="game1.js"></script>
</body>
</html>
GooodWin67- Сообщения : 94
Дата регистрации : 2017-12-27
Re: Делаем таблицу рекордов
Новых ошибок не появилось.
Вот тут можно посмотреть, что сейчас происходит)
http://lcfc.ru/test3/index.html
Вот тут можно посмотреть, что сейчас происходит)
http://lcfc.ru/test3/index.html
GooodWin67- Сообщения : 94
Дата регистрации : 2017-12-27
Re: Делаем таблицу рекордов
Думаю, проблема в records.php. В том, что текстовый файл не преобразовывается в json и отправляет в get(?) запросе какую-то фигню.
Но я зря походу влез в тему, раз не разбираюсь в php.
Но я зря походу влез в тему, раз не разбираюсь в php.
raingo- Отдел прокрастинации
- Сообщения : 756
Дата регистрации : 2017-12-25
Re: Делаем таблицу рекордов
json нормальный приходит
проблема точно не в этом. а в чем - хз. завтра попробую этот код у себя запустить - отпишусь.
- Код:
[{score: "5", name: "test"}, {score: "5", name: "test"}, {score: "5", name: "test"},…]
0
:
{score: "5", name: "test"}
1
:
{score: "5", name: "test"}
2
:
{score: "5", name: "test"}
3
:
{score: "5", name: "test"}
4
:
{score: "5", name: "test"}
5
:
{score: "5", name: "test"}
6
:
{score: "5", name: "test"}
7
:
{score: "5", name: "test"}
8
:
{score: "5", name: "test"}
9
:
{score: "5", name: "test"}
10
:
{score: "ArrayArray", name: "Unnamed"}
проблема точно не в этом. а в чем - хз. завтра попробую этот код у себя запустить - отпишусь.
Re: Делаем таблицу рекордов
Гудвин. Проблема в твоем сервере. я полностью скопировал твой код без изменений (только все в одну папку скинул файлы) - все работает. и на локалке и на удаленном сервере.
https://pyro338.ru/space-invaders/records-test/
https://pyro338.ru/space-invaders/records-test/records.php?score=150&name=test12 (подставь свои значения score и name - увидишь, что всё сохраняется)
вот ели что в одном архиве всё https://pyro338.ru/space-invaders/records-test/records-test.rar
в ТП хостера попробуй написать
https://pyro338.ru/space-invaders/records-test/
https://pyro338.ru/space-invaders/records-test/records.php?score=150&name=test12 (подставь свои значения score и name - увидишь, что всё сохраняется)
вот ели что в одном архиве всё https://pyro338.ru/space-invaders/records-test/records-test.rar
в ТП хостера попробуй написать
Страница 3 из 3 • 1, 2, 3
Страница 3 из 3
Права доступа к этому форуму:
Вы не можете отвечать на сообщения