Добрый вечер, заранее извиняюсь за свой ужасный код, учусь только 13 дней. Решил испытать свои силы и создать подобие вывода новостей c возможностью комментирования, как в большинстве социальных сетей, но столкнулся с проблемой: в мою пустую голову не приходит мысль как сделать так, чтобы при нажатии на ссылку или кнопку копировалось id этой статьи в глобальный массив $_SESSION, чтобы в дальнейшем на другой странице пользователи могли обмениваться комментариями. Подскажите, как добавить id нужной статьи в $_SESSION, если все строки из БД выводятся через цикл. Спасибо В коде используется RedBean Вот код вывода новостей : PHP: <?php require '../db.php'; require_once '../cbd.php'; if (isset($_SESSION['logged_user'])) { $connection = mysqli_connect($host, $user, $password, $database);// or die("Ошибка " . mysqli_error($connection)); $result = mysqli_query($connection,"SELECT * FROM `stories` ORDER BY id DESC LIMIT 100"); $i = 0; while(($record=mysqli_fetch_assoc($result))){ echo '<div class="stories">'. '<a href="" style="font-size:50%; opacity="0.8">Комментировать</a>' . '<div style="text-align:center;">' . ' <h6 style="opacity: 0.2;"> id: ' . $record['id'] .'</h6>'.'<h4>'. $record['name'] .'</h4>' . $record['text'] . '</div>' . '</div>' ; echo('<br>'); } }else { echo '<div id="error01"> <a id="nonreg" href="../index.php"> Войдите</a > или <a id="nonreg" href="../register.php">зарегистрируйтесь</a></div>' ; } ?> Вот скрин страницы :
за 13 дней выучить пых, чтобы содержать в более менее читабельный код и использовать современные функции / проверять переменные перед использованием как подабается. Парень... лайк огромный. Это редкость
добавить атрибут data-id = "" где будет вставляться ID статьи + идентифицируем хотябы id = "comments" Lальше ajax Код (Javascript): $( function() { $( 'body' ).on( 'click', 'a#comments', function( e ) { e.preventDefault(); # перехват действия клика var id = $( this ).attr( 'data-id' ); # слизываем с атрибута data-id айди статьи и помещаем в id переменную $.get( { ... погуглить! }); }); }); ой... парюсь PHP: echo '<div class="stories">'. '<a href="#' . $record['id'] .'" style="font-size:50%; opacity="0.8">Комментировать</a>
чочо а каменты делать это как раз стартовая задача, которая ранее называлась "доска объявлений" аяксом или нет - второй вопрос главное что есть некая сущность, к уникальному идентификатору которой прилипают каменты. Выводить каменты надо либо просто по времени, либо деревом, либо ещё как, но выборка каментов происходит именно через этот идентификатор. Обычно это просто некий номер какой-то статьи или объявления.
в таком случае нужно в элемент добавить data-id=номер и обращаться к нему лучше не а $(this).data('id)
ага 13 дней, по такому графику он через 8 месяцев создаст социалку превосходящую facebook по все параметрам