Maison > cadre php > YII > Créer un site Web de consultation en santé à l'aide du framework Yii

Créer un site Web de consultation en santé à l'aide du framework Yii

WBOY
Libérer: 2023-06-21 15:34:36
original
1113 Les gens l'ont consulté

Yii framework est un framework PHP hautes performances. Son modèle de conception MVC et ses fonctionnalités de développement rapide le rendent idéal pour créer des applications Web. Cet article vous présentera comment utiliser le framework Yii pour créer un site Web de consultation en santé.

  1. Preparation

Avant de commencer, assurez-vous d'avoir installé PHP et MySQL, et d'avoir installé le framework Yii sur le serveur.

  1. Créer une base de données

Afin de stocker les informations sur les utilisateurs et les articles, nous devons créer une base de données MySQL nommée Health. Créez deux tables dans la base de données, à savoir les utilisateurs et les publications. Parmi eux, la table des utilisateurs est utilisée pour stocker les informations sur les utilisateurs et la table des publications est utilisée pour stocker les informations sur les articles.

Lors de la création de la table utilisateur, nous devons inclure les champs suivants :

  • id : L'identifiant unique de l'utilisateur, auto-incrémenté.
  • username : Nom d'utilisateur.
  • email : Adresse email de l’utilisateur.
  • password : Mot de passe utilisateur, stocké après cryptage.
  • created_at : heure de création de l'utilisateur.
  • updated_at : L'heure de la dernière mise à jour de l'utilisateur.

Lors de la création de la table article, nous devons inclure les champs suivants :

  • id : L'identifiant unique de l'article, auto-incrémentation .
  • title : Titre de l'article.
  • content : Contenu de l'article.
  • author_id : L'identifiant de l'auteur de l'article.
  • created_at : Heure de création de l'article.
  • updated_at : L'heure à laquelle l'article a été mis à jour pour la dernière fois.
  1. Configurer le framework Yii

Ouvrez le fichier config/web.php dans le répertoire d'installation du framework Yii et configurez la connexion à la base de données information. Modifier le contenu suivant :

'db' => [
    'class' => 'yiidbConnection',
    'dsn' => 'mysql:host=localhost;dbname=health',
    'username' => 'your_database_username',
    'password' => 'your_database_password',
    'charset' => 'utf8',
],
Copier après la connexion
  1. Créer un système d'authentification des utilisateurs

Dans le framework Yii, le système d'authentification des utilisateurs est intégré et nous pouvons l'utiliser pour gérer la connexion et l’enregistrement des utilisateurs. Tout d’abord, nous devons créer des actions de connexion et d’enregistrement dans le fichier SiteController.php.

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,
    ]);
}
Copier après la connexion

Créez des modèles LoginForm et SignupForm pour vérifier les informations de connexion et d'enregistrement des utilisateurs.

Enfin, ajoutez le code suivant au fichier SiteController.php pour restreindre l'accès des utilisateurs à certaines pages et ne pouvoir y accéder qu'après s'être connectés.

public function behaviors() {
   return [
       'access' => [
           'class' => AccessControl::className(),
           'rules' => [
                [
                    'actions' => ['login', 'signup'],
                    'allow' => true,
                    'roles' => ['?'],
                ],
                [
                    'actions' => ['logout', 'index', 'create-post'],
                    'allow' => true,
                    'roles' => ['@'],
                ],
           ],
       ],
   ];
}
Copier après la connexion
  1. Créer un système de gestion d'articles

Pour que les utilisateurs puissent publier et gérer des articles, nous devons créer les actions suivantes dans PostController Fichier .php : # 🎜🎜#

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.');
}
Copier après la connexion

Lors de la création d'un article, nous devons utiliser le modèle Post pour recevoir les données du formulaire, et ajouter les règles de validation suivantes dans le modèle :

public function rules()
{
    return [
        [['title', 'content'], 'required'],
        ['title', 'string', 'max' => 255],
        ['content', 'string'],
    ];
}
Copier après la connexion

You peut l'utiliser pour ajouter des fonctions de recherche d'articles au modèle de recherche de site Web fourni par le framework Yii. Nous devons créer un fichier nommé PostSearch.php dans le dossier models et y ajouter le code suivant :

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;
}
Copier après la connexion
    Créer une page de site Web
  1. #🎜 🎜# Maintenant, nous pouvons commencer à créer des pages de sites Web. Nous pouvons créer un contrôleur appelé site, où nous créons la page suivante :

Page à propos

    Page de contact
  • Chaque page a besoin pour contenir un fichier de mise en page, comprenant un en-tête, un pied de page, une barre de navigation et d'autres éléments.
  • Publier le site Web
  • Maintenant, nous pouvons publier le site Web sur le serveur et le tester. Vérifiez si le site fonctionne correctement dans votre navigateur et testez que chaque fonctionnalité fonctionne correctement.
Conclusion

Construire un site Web de consultation en santé à l'aide du framework Yii est une tâche très simple. Le modèle de conception MVC et les fonctionnalités de développement rapide du framework Yii en font un choix idéal pour développer des applications Web. Au cours du processus de développement, il fournit non seulement aux utilisateurs des services de conseil en santé ouverts, mais offre également aux développeurs des opportunités d'apprendre et d'appliquer le cadre. Bien entendu, nous pouvons utiliser le framework Yii pour créer des applications Web plus complexes et compter sur ses hautes performances et sa flexibilité pour offrir aux utilisateurs une meilleure expérience.

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Étiquettes associées:
    source:php.cn
    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
    Tutoriels populaires
    Plus>
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal