Bonjour, j'aurais à nouveau besoin d'un petit coup de main ! Je vérifie si
une table est vide, si elle l'est je la remplie, mais j'aimerai lorsqu'elle
ne l'est pas, avoir un petit message qui apparait, indiquant que la table
est déjà remplie, j'ai essayé plusieurs méthodes rien n'a fonctionné, il ne
se passe juste rien quand j'appuie sur le bouton
mon php :
if (f('transf'))
{
$form->check('transfert_temp');
$test_db = $db-> getGrouped('SELECT * FROM m_compteur_temp;');
if (empty($test_db))
{
requêtes sql...
}
}
mon tpl :
{if !empty($test_db)}
<p class="block alert">
La table est déjà pleine.
</p>
{/if}
J'ai également essayé en initialisant $result = null, et en mettant un else
qui donnerait une valeur a $result, pour apres dans le tpl tester $result
!== null mais pareil, rien ne s'affiche
Tu as bien passé la variable $test_db à ton template ?
Aussi, faire un SELECT * juste pour tester si elle est vide me semble un
peut-être un peu overkill, si ta table a un millier d'entrées tu te
retrouves à toutes les charger sans t'en servir, il y aurait peut-être
quelque chose de plus adapté ?
Je vais faire cela pour optimiser les temps de traitement merci, sinon oui
j'ai bien passé $test_db au template avec un assign mais pour le message
popup j'ai trouvé une solution de secours :avec du js
echo '<script>alert('blabla');</script>';
Le lun. 21 juin 2021 à 23:27, BohwaZ/Garradin <bohwaz@garradin.eu> a écrit
:
> Ça devrait suffire de faire ça :
>
> $db->firstColumn('SELECT 1 FROM ma_table LIMIT 1;');
>
> Normalement on ne fait jamais de SELECT * sans LIMIT.
>
> Cordialement.
>
> --
> . ____
> / ___| Liste d'entraide des utilisateurs de Garradin
> | | _ http://garradin.eu/
> | |_| |
> \____| Désinscription : http://garradin.eu/aide/
>