0
votes

Comment montrer différentes valeurs si l'entrée est vide

J'utilise php et sql. Je veux atteindre ce qui peut être pseudo-codé comme: xxx

Quel code PHP pourrait me permettre de le faire? Ma principale difficulté réside dans la détection de champs vides.


3 commentaires

Veuillez fournir des exemples de données, des résultats souhaités et ajoutez une balise de base de données appropriée pour la base de données que vous utilisez.


Vous avez rejeté la réponse de la coalesce sans même l'essayer. Ainsi, je renvoie cette question et ne vous inquiétez pas de la répondre.


J'ai essayé de trouver comment je peux travailler avec coalesce ... Voir commentaire sous la réponse de la coalesce.


3 Réponses :


0
votes

voulez-vous simplement que vous voulez simplement coalesce () code> dans votre requête SQL?

select coalesce(pro_foto1,
                concat('/afbeeldingen/', replace(lower(pro_thema), ' ', '-'),
               ) as what_I_show


3 commentaires

Je ne sais pas comment mettre cela dans mon fichier php. J'ai essayé le code wpdb global global; $ photo = $ wpdb-> get_results ("sélectionnez coalesce (pro_foto1, concat ('/ Afbeelingingen /', remplacer (inférieur (pro_thema), '' ',' ',' ',' ',' - '),) Comme what_i_show"); Code . Il devrait y avoir un .jpg après le nom de la photo. Également s'il y a une entrée dans le champ pro_foto1, ce sera "/ Afbeeldingen / nom-de-champ-pro_foto1"


@Ullitasch. . . Votre question est marquée "SQL" impliquant que vous utilisez une requête. Si vous n'êtes pas, supprimez la balise et je vais supprimer cette réponse.


Bonjour Gordon, merci d'avoir répondu. Je travaille avec la base de données SQL et je demande des informations sur une base de données. Donc, je pense que j'utilise une requête, non? Je n'ai pas besoin de la "première valeur non nulle dans une liste" mais une option si ce champ est vide, puis imprimez autre chose (en fonction de la valeur d'un autre champ: Pro_thema)



0
votes

en PHP, en utilisant WordPress, vous pouvez lire votre ligne de données dans une matrice associative $ rangée code>, puis le traiter à l'aide de quelque chose comme ceci:

$results = $wpdb->get_results("SELECT * FROM haella_projecten_test WHERE pro_status = 'normaal'",
                              "ARRAY");
foreach ($results as $row) {
    if (!empty($row['pro_foto1'])) {
        $photo = $row['pro_foto1'];
    }
    else {
        switch ($row['pro_thema']) {
            case 'Vrede en Mensenrechten':
                $photo = '/afbeeldingen/vrede-en-mensenrechten.jpg';
                break;
            case 'Samenleven in Nederland':
                $photo = '/afbeeldingen/samenleven-in-nederland';
                break;
            // ... add as many entries as required
            default:
                // show default photo
                break;
        }
    }
}


2 commentaires

Comment puis-je lire ma ligne de données dans une rangée associative $ rangée? Ce que je fais maintenant pour vous connecter à la base de données WP où j'ai fait une nouvelle ligne "Haella_Projecten" est la suivante: Global $ WPDB; $ résultats = $ wpdb-> get_results ("Select * de haella_projecten_test où pro_status = 'Normaal'"); $ thema = $ r--> pro_thema;


@Ullitasch s'il vous plaît voir mon édition. Cela devrait récupérer les résultats dans un tableau associatif pour le traitement.



0
votes

Le code suivant donne la bonne sortie. Merci de m'aider à trouver la bonne façon: xxx


0 commentaires