Голосование за лучший ответ
Григорий Крюков
Мудрец
(15283)
2 месяца назад
<?php
header('Content-Type: text/plain'); // Устанавливаем заголовок, чтобы вывод был текстом
$perem = 0;
if (isset($_GET["perem"])) {
$perem = $_GET["perem"];
$filePath = 'perem' . $perem . '.txt';
$file = file($filePath);
if ($file === false) {
echo 'Ошибка: Не удалось открыть файл.';
exit();
}
$peremval = 0;
if (isset($_GET["peremval"])) {
$peremval = $_GET["peremval"];
if ($peremval == 0) {
// Если peremval равно 0, показываем значение переменной perem
$peremvalue = trim($file[1]);
echo $peremvalue;
} else {
// Если peremval не равно 0
if (isset($_GET["value"])) {
$value = $_GET["value"];
// Проверяем, является ли value числом и не равно ли оно нулю
if (!is_numeric($value) || $value == 0) {
$valueaaa = trim($file[1]);
$nameper = trim($file[0]);
// Открываем файл для записи
$writ = fopen($filePath, "w");
if ($writ) {
fwrite($writ, $nameper . PHP_EOL . $valueaaa);
fclose($writ);
} else {
echo 'Ошибка: Не удалось открыть файл для записи.';
}
} else {
$nameper = trim($file[0]);
// Открываем файл для записи
$writ = fopen($filePath, "w");
if ($writ) {
fwrite($writ, $nameper . PHP_EOL . $value);
fclose($writ);
} else {
echo 'Ошибка: Не удалось открыть файл для записи.';
}
}
echo $value;
}
}
}
}
?>
Внесены следующие изменения:
Добавлен заголовок Content-Type: text/plain, чтобы браузер отображал вывод как текст.
Убраны HTML-теги, оставлен только PHP-код.
Использована функция trim(), чтобы убрать лишние пробелы и переносы строк из значений.
Теперь при запросе будут выводиться только значения переменных $peremvalue и $value, как требуется. Попробуйте этот код и посмотрите, работает ли он так, как вы ожидаете!
Михаил Остроух
Знаток
(326)
2 месяца назад
Чтобы ваш PHP-код выводил только текст из переменных `$peremvalue` и `$value`, вам нужно изменить логику вывода. В данном случае, вам необходимо убедиться, что все остальные части кода не выводятся, и оставить только нужные значения.
Вот исправленный вариант вашего кода:
```php
<html>
<title>ggtfPocketCode</title>
<body bgcolor="#222222" text="#fff">
<?php
$perem = 0;
$peremvalue = '';
$value = '';
if (isset($_GET["perem"])) {
$perem = $_GET["perem"];
$filePath = 'perem' . $perem . '.txt';
$file = file($filePath);
if ($file === false) {
echo 'Ошибка: Не удалось открыть файл.';
exit();
}
if (isset($_GET["peremval"])) {
$peremval = $_GET["peremval"];
if ($peremval == 0) {
// Если peremval равно 0, показываем значение переменной perem
$peremvalue = trim($file[1]);
} else {
// Если peremval не равно 0
if (isset($_GET["value"])) {
$value = $_GET["value"];
// Проверяем, является ли value числом и не равно ли оно нулю
if (!is_numeric($value) || $value == 0) {
$value = trim($file[1]);
} else {
$nameper = trim($file[0]);
// Открываем файл для записи
$writ = fopen($filePath, "w");
if ($writ) {
fwrite($writ, $nameper . $value);
fclose($writ);
} else {
echo 'Ошибка: Не удалось открыть файл для записи.';
}
}
}
}
}
}
// Выводим только текст из переменных
if (!empty($peremvalue)) {
echo $peremvalue;
} elseif (!empty($value)) {
echo $value;
}
?>
</body>
</html>
```
Я убрал вывод всего кода, оставив только вывод значений `$peremvalue` и `$value`.
Добавил проверку на пустоту этих переменных перед выводом, чтобы гарантировать, что выводится только один из них.
Теперь, когда вы отправите веб-запрос с нужными параметрами, ответом будет только текстовое значение из одной из переменных.
<html>
<title>ggtfPocketCode</title>
<body bgcolor="#222222" text="#fff">
<?php
$perem = 0;
if (isset($_GET["perem"])) {
$perem = $_GET["perem"];
$filePath = 'perem' . $perem . '.txt';
$file = file($filePath);
if ($file === false) {
echo 'Ошибка: Не удалось открыть файл.';
exit();
}
$peremval = 0;
if (isset($_GET["peremval"])) {
$peremval = $_GET["peremval"];
if ($peremval == 0) {
// Если peremval равно 0, показываем значение переменной perem
$peremvalue = $file[1];
echo $peremvalue;
} else {
// Если peremval не равно 0
if (isset($_GET["value"])) {
$value = $_GET["value"];
// Проверяем, является ли value числом и не равно ли оно нулю
if (!is_numeric($value) || $value == 0) {
$valueaaa = $file[1];
$nameper = $file[0];
// Открываем файл для записи
$writ = fopen($filePath, "w");
if ($writ) {
fwrite($writ, $nameper . PHP_EOL . $valueaaa);
fclose($writ);
} else {
echo 'Ошибка: Не удалось открыть файл для записи.';
}
} else {
$nameper = $file[0];
// Открываем файл для записи
$writ = fopen($filePath, "w");
if ($writ) {
fwrite($writ, $nameper . $value);
fclose($writ);
} else {
echo 'Ошибка: Не удалось открыть файл для записи.';
}
}
}
}
}
}
if (isset($value)) {
echo $value;
}
?>
</body>
</html>
Надо чтобы в покет коде при отправке веб-запроса в переменную выводило только текст из переменной $peremvalue и $value, нужно исправить код который предоставил я, пожалуйста помогите я новичок в этом всём.
Ссылка - http://w91021zo.beget.tech/ggtfPocketCode/ggtf3000/perems.php?perem=5&peremval=0, выдаёт весь код, а надо $peremvalue и $value.
В этой ссылке текст - тестовое значение переменной, вот нужно его.