PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#2 Re : MySQL, PostgreSQL, etc... » Suppression de lignes dans une table avec pdo » 30-09-2017 10:46:30

Bon, d'accord ça économise en effet 1 ligne ;-)
Peux-tu me dire ce qu'il y a comme incohérences, stp ?

#3 Re : MySQL, PostgreSQL, etc... » Suppression de lignes dans une table avec pdo » 30-09-2017 10:46:30

Bonjour Pierrot,

Désolé mais je ne vois pas très bien l'amélioration que ça apporterait.

#4 Re : MySQL, PostgreSQL, etc... » Suppression de lignes dans une table avec pdo » 30-09-2017 10:46:30

Je me réponds à moi-même sur le 1er point. Mon script est maintenant :

 <?php
                include "connexion.php";
                $timestamp_5min = time() - 300;

                $SQL = 'DELETE FROM connectes WHERE timestamp < :ts';
                try
                    {
                        $stmt = $pdo->prepare($SQL);
                        $stmt->bindValue( ':ts', $timestamp_5min);
                        if (!$stmt->execute())
                            {
                                throw new PDOException('Erreur Execute requete');
                            }
                        else
                        {
                            echo "Il y a ". $stmt->rowCount() ." lignes supprimées";
                        }
                    }
                catch (PDOException $pdoE)
                    {
                        echo "Une erreur s'est produite dans le nettoyage des ip: <br/>".$pdoE->getMessage();

                    }
?>

Pouvez-vous dire comment le pourrais le rendre + propre car je ne suis pas sûr de moi.

#5 Re : Forum Général PHP » mysql ou mysqli? » 16-09-2017 15:38:27

develop_adn,

mysql étant dépassé et mysqli une vraie usine à gaz, passe à pdo beaucoup + simple à mettre en œuvre et vraiment puissante.

#7 MySQL, PostgreSQL, etc... » Suppression de lignes dans une table avec pdo » 30-09-2017 10:46:30

tintin56
Réponses : 8

Bonjour,

Je souhaite supprimer de la table 'connectes' toutes les lignes pour lesquelles le timestamp enregistré a + de 5'. Pour cela, j'utilise le code suivant.

 <?php
                include "connexion.php";
                $timestamp_5min = time() - 300;

                $SQL = 'DELETE FROM connectes WHERE timestamp < :ts';
                try
                    {
                        $stmt = $pdo->prepare($SQL);
                        $stmt->bindValue( ':ts', $timestamp_5min);
                        if (!$stmt->execute())
                            {
                                throw new PDOException('Erreur Execute requete');
                            }
                    }
                catch (PDOException $pdoE)
                    {
                        echo "Une erreur s'est produite dans le nettoyage des ip: <br/>".$pdoE->getMessage();
                    }
?>

Pouvez-vous me dire comment faire pour afficher le nombre de lignes supprimées et si c'est correctement écrit.
D'avance merci.

Pied de page des forums

Propulsé par FluxBB