Как сделать так, чтобы файл cookie сохранялся и получался системой?

#php

#php

Вопрос:

Я создаю систему, которая сохраняет чей-то UDID (iOS) и выводит его обратно в исходное поле ввода.

Это для веб-приложения iOS, над которым я работаю. Я пробовал это:

 <?php
    $udid = $_POST['udid'];
    if(empty($udid)){
        $udid = $_COOKIE['udid'];
    } else {
        $udid = $_POST['udid'];
    }
?>
<form class='form-horizontal well' action='#' method='post'>
    <input type='text' name='udid' class='input-large' placeholder="udid" value='<?php $udid ?>'>
    <button type='submit' id='submit' class='badge-primary'>Save</button>
</form>
<?php
    setcookie("udid", $udid, time() 31536000000, "/");
?>
 

Мне нужно, чтобы udid пользователя был сохранен, а затем выведен в поле ввода. Когда я запускал это, UDID не отображался в поле ввода. Что я сделал не так?

Комментарии:

1. Измените это <?php $udid ?> на <?= $udid; ?>

2. <?php echo $udid ?> в вашем вводе

Ответ №1:

Я думаю, что ваша ошибка находится в строке ниже:

 <input type='text' name='udid' class='input-large' placeholder="udid" value='<?php $udid ?>'>
 

Измените его на:

 <input type='text' name='udid' class='input-large' placeholder="udid" value='<?= $udid ?>'>
 

Обратите внимание, что я изменил: <?php $udid ?> to <?= $udid ?>

Таким образом, ваш PHP-скрипт отобразит переменную.

На самом деле, <?= это просто сокращение для <?php echo начиная с php5.4

Комментарии:

1. Спасибо. Я проверю, работает ли это для меня.

Ответ №2:

У вас есть echo переменная $udid

 value='<?php echo $udid ?>'
 

Убедитесь, что переменная $udid не пуста, иначе файл cookie никогда не будет назначен.