Heim > Artikel > PHP-Framework > Erstellen Sie eine Website für Gesundheitsberatung mit dem Yii-Framework
Yii-Framework ist ein leistungsstarkes PHP-Framework. Sein MVC-Designmuster und seine schnellen Entwicklungsfunktionen machen es ideal für die Erstellung von Webanwendungen. In diesem Artikel erfahren Sie, wie Sie mit dem Yii-Framework eine Website für Gesundheitsberatung erstellen.
Bevor Sie beginnen, stellen Sie sicher, dass PHP und MySQL installiert sind und das Yii-Framework auf dem Server installiert ist.
Um Benutzer- und Artikelinformationen zu speichern, müssen wir eine MySQL-Datenbank mit dem Namen „health“ erstellen. Erstellen Sie zwei Tabellen in der Datenbank, nämlich Benutzer und Beiträge. Unter diesen wird die Benutzertabelle zum Speichern von Benutzerinformationen und die Beitragstabelle zum Speichern von Artikelinformationen verwendet.
Beim Erstellen der Benutzertabelle müssen wir die folgenden Felder einschließen:
Beim Erstellen der Artikeltabelle müssen wir die folgenden Felder einschließen:
Öffnen Sie die Datei config/web.php im Installationsverzeichnis des Yii-Frameworks und konfigurieren Sie die Datenbankverbindungsinformationen. Ändern Sie den folgenden Inhalt:
'db' => [ 'class' => 'yiidbConnection', 'dsn' => 'mysql:host=localhost;dbname=health', 'username' => 'your_database_username', 'password' => 'your_database_password', 'charset' => 'utf8', ],
Im Yii-Framework ist das Benutzerauthentifizierungssystem integriert, und wir können es zur Verwaltung der Benutzeranmeldung und -registrierung verwenden. Zuerst müssen wir Anmelde- und Registrierungsaktionen in der Datei SiteController.php erstellen.
public function actionLogin() { if (!Yii::$app->user->isGuest) { return $this->goHome(); } $model = new LoginForm(); if ($model->load(Yii::$app->request->post()) && $model->login()) { return $this->goBack(); } return $this->render('login', [ 'model' => $model, ]); } public function actionSignup() { $model = new SignupForm(); if ($model->load(Yii::$app->request->post()) && $model->signup()) { return $this->goHome(); } return $this->render('signup', [ 'model' => $model, ]); }
Erstellen Sie LoginForm- und SignupForm-Modelle zur Überprüfung der Anmelde- und Registrierungsinformationen des Benutzers.
Fügen Sie abschließend den folgenden Code zur SiteController.php-Datei hinzu, um den Zugriff der Benutzer auf bestimmte Seiten einzuschränken und nur nach der Anmeldung darauf zugreifen zu können.
public function behaviors() { return [ 'access' => [ 'class' => AccessControl::className(), 'rules' => [ [ 'actions' => ['login', 'signup'], 'allow' => true, 'roles' => ['?'], ], [ 'actions' => ['logout', 'index', 'create-post'], 'allow' => true, 'roles' => ['@'], ], ], ], ]; }
Damit Benutzer Artikel veröffentlichen und verwalten können, müssen wir die folgenden Aktionen in der Datei PostController.php erstellen:
public function actionCreate() { $model = new Post(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } return $this->render('create', [ 'model' => $model, ]); } public function actionUpdate($id) { $model = $this->findModel($id); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } return $this->render('update', [ 'model' => $model, ]); } public function actionView($id) { return $this->render('view', [ 'model' => $this->findModel($id), ]); } public function actionIndex() { $searchModel = new PostSearch(); $dataProvider = $searchModel->search(Yii::$app->request->queryParams); return $this->render('index', [ 'searchModel' => $searchModel, 'dataProvider' => $dataProvider, ]); } protected function findModel($id) { if (($model = Post::findOne($id)) !== null) { return $model; } throw new NotFoundHttpException('The requested page does not exist.'); }
Beim Erstellen eines Artikels müssen wir die verwenden Veröffentlichen Sie das Modell, um Formulardaten zu empfangen, und fügen Sie dem Modell die folgenden Validierungsregeln hinzu:
public function rules() { return [ [['title', 'content'], 'required'], ['title', 'string', 'max' => 255], ['content', 'string'], ]; }
Beim Hinzufügen von Artikelsuchfunktionen zur Website kann das vom Yii-Framework bereitgestellte Suchmodell verwendet werden. Wir müssen eine Datei namens PostSearch.php im Modellordner erstellen und den folgenden Code hinzufügen:
public function search($params) { $query = Post::find(); $dataProvider = new ActiveDataProvider([ 'query' => $query, ]); $this->load($params); if (!$this->validate()) { return $dataProvider; } $query->andFilterWhere(['like', 'title', $this->title]); $query->andFilterWhere(['like', 'content', $this->content]); return $dataProvider; }
Jetzt können wir mit der Erstellung von Website-Seiten beginnen. Wir können einen Controller namens Site erstellen und darin die folgenden Seiten erstellen:
Jede Seite muss eine Layoutdatei enthalten, einschließlich Elemente wie z als Kopfzeile, Fußzeile und Navigationsleiste.
Jetzt können wir die Website auf dem Server veröffentlichen und testen. Überprüfen Sie, ob die Website in Ihrem Browser ordnungsgemäß funktioniert, und testen Sie, ob jede Funktion ordnungsgemäß funktioniert.
Fazit
Der Aufbau einer Gesundheitsberatungs-Website mit dem Yii-Framework ist eine sehr einfache Aufgabe. Das MVC-Entwurfsmuster und die schnellen Entwicklungsfunktionen des Yii-Frameworks machen es zur idealen Wahl für die Entwicklung von Webanwendungen. Während des Entwicklungsprozesses stellt es Benutzern nicht nur offene Gesundheitsberatungsdienste zur Verfügung, sondern bietet Entwicklern auch die Möglichkeit, das Framework zu erlernen und anzuwenden. Natürlich können wir das Yii-Framework verwenden, um komplexere Webanwendungen zu erstellen und uns auf seine hohe Leistung und Flexibilität verlassen, um Benutzern ein besseres Erlebnis zu bieten.
Das obige ist der detaillierte Inhalt vonErstellen Sie eine Website für Gesundheitsberatung mit dem Yii-Framework. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!