У меня есть система, в которую пользователь может войти, и может выбрать событие и сохранить его в базе данных.назовите имя пользователя, который выбирает элемент для текущего пользователя.
Однако, проблема заключается в том, что я могу установить только один пользователь, как вы можете видеть в строке 9 в save.php
Так что мой вопрос, как установить пользователь в системе, чтобы быть автоматическим так что если другой пользовательский логин, данные будут сохранены под их именем. проблема в том, потому что Войти использует yii2 рамки, и это выбрать событие с помощью HTML и модель события с помощью Gii,
Вот мой код:
Код для viewevents.php
<?php
echo '<link href="../../css/style.css" rel="stylesheet"/>';
$event = get_events();
function get_events(){
include ("../config/connect.php");
$sql = "SELECT * FROM `events` order by event_id desc;";
if ($result = $dayahlatiff->query($sql)) { $in = 0;
while ($row = $result->fetch_assoc()) {
$new_res[$in] = $row;
$in++;
}
$result->free();
}
return isset($new_res)?$new_res:array();
}
$this->title = 'View Events';
$this->params['breadcrumbs'][] = $this->title;
?>
<?php $in = 1;
if (!empty($event)) {
include 'events.php';
}
?>
код для save.php
<?php
session_start();
if(isset($_SESSION["id_"])){
// $hh = $_SESSION["id_"];
// die($hh);
}
require("../../../vendor/yiisoft/yii2/Yii.php");
$user = "dayahlatiff";
//$user = Yii::$app->user->identity->username;
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
if(isset($_POST["save"])){
include ("../../config/connect.php");
$where = $_POST["where"];
$list = $_POST["check_list"];
if(empty($list)){
header("Location: ".$where);
}else {
$done = true;
for($s = 0; $s<sizeof($list); $s++){
$event = $list[$s];
$sql = "INSERT INTO `selectevents` (`user_id`, `username`, `event_title`) VALUES (NULL, '$user', '$event');";
if($dayahlatiff->query($sql) === FALSE){
$event = false;
}
}
header("Location: ".$where);
}
}
Это похоже на старый код устаревшего PHP, который принудительно использует Yii. Почему вы не используете Yii 2 правильно? – Bizley
@Bizley на самом деле, я пробовал использовать yii2, но он не работает..так, я получаю помощь от моего друга, но он не слишком мастер, использующий yii2, поэтому код смешивает yii2 и html. однако html-код предназначен только для этого 2 файла (viewevents.php и save.php) – Fyp16
Прокомментированная строка с '// $ user = ...' - это именно тот способ, чтобы получить имя пользователя зарегистрированного пользователя Yii 2, но я действительно сомневаюсь, можете ли вы использовать его здесь без каких-либо проблем. Кроме того, ваш код открыт для SQL-инъекции. Yii 2 не так сложно учиться. Проверьте [Yii 2 Guide] (http://www.yiiframework.com/doc-2.0/guide-index.html) и сделайте это правильно. – Bizley