Heim > PHP-Framework > YII > Hauptteil

Erstellen Sie eine Website für Gesundheitsberatung mit dem Yii-Framework

WBOY
Freigeben: 2023-06-21 15:34:36
Original
1054 Leute haben es durchsucht

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.

  1. Vorbereitung

Bevor Sie beginnen, stellen Sie sicher, dass PHP und MySQL installiert sind und das Yii-Framework auf dem Server installiert ist.

  1. Datenbank erstellen

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:

  • id: die eindeutige ID des Benutzers, automatisch hochzählend.
  • Benutzername: Benutzername.
  • E-Mail: E-Mail-Adresse des Benutzers.
  • Passwort: Benutzerpasswort, gespeichert nach der Verschlüsselung.
  • created_at: Zeitpunkt der Benutzererstellung.
  • updated_at: Zeitpunkt der letzten Aktualisierung durch den Benutzer.

Beim Erstellen der Artikeltabelle müssen wir die folgenden Felder einschließen:

  • id: Die eindeutige ID des Artikels, die automatisch wächst.
  • Titel: Titel des Artikels.
  • Inhalt: Artikelinhalt.
  • author_id: ID des Autors des Artikels.
  • created_at: Zeitpunkt der Artikelerstellung.
  • updated_at: Der Zeitpunkt, zu dem der Artikel zuletzt aktualisiert wurde.
  1. Yii-Framework konfigurieren

Ö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',
],
Nach dem Login kopieren
  1. Erstellen Sie ein Benutzerauthentifizierungssystem.

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,
    ]);
}
Nach dem Login kopieren

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' => ['@'],
                ],
           ],
       ],
   ];
}
Nach dem Login kopieren
  1. Erstellen Sie ein Artikelverwaltungssystem

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.');
}
Nach dem Login kopieren

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'],
    ];
}
Nach dem Login kopieren

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;
}
Nach dem Login kopieren
  1. Website-Seiten erstellen

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:

  • Anmeldeseite
  • Registrierungsseite
  • Startseite
  • Über-Seite
  • Kontaktseite

Jede Seite muss eine Layoutdatei enthalten, einschließlich Elemente wie z als Kopfzeile, Fußzeile und Navigationsleiste.

  1. Website veröffentlichen

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!