[RESOLU] next si erreur dans une boucle

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] next si erreur dans une boucle

Re: next si erreur dans une boucle

par @rthur » 10 janv. 2016, 20:08

Il suffit que la requête commence par INSERT IGNORE INTO au lieu de INSERT INTO.
Merci pour le partage de la solution :pouce:

Re: next si erreur dans une boucle

par grostathar » 10 janv. 2016, 12:44

Auto reponse, c est fou comme google est meilleur quand on a trouver les mots pour lui posé sa question ^^

Il suffit que la requête commence par INSERT IGNORE INTO au lieu de INSERT INTO.

Bon Dimanche.

next si erreur dans une boucle

par grostathar » 10 janv. 2016, 12:22

Bonjour,

J'ai une base de donnée trop grosse pour accepté un "SELECT MAX(aaa)" environ 2,5Go sur 2 Millions de lignes.
Les puriste crierons au scandale et a juste titre mais je ne veux pas faire autrement aujourd'hui. demain je serais obliger d’évoluer mais se sera demain^^.

Je souhaite rajouter des lignes à cette table. Pour cela j'ai creer une boucle si dessous. Qui marche tres bien au premier passage, mais qui me jette au 2eme pour cause de duplication. (logique)

J’étais partie pour recherche la dernière valeur entrée et donc commencer m'a boucle a celle ci mais voila... je cherche donc une solution pour passer à l'occurance suivant si celle si est déjà présente. (une correspondance dans excel serait if error next)

Merci pour votre aide et bon dimanche.

Le Code

Code : Tout sélectionner

<?php //requête SQL: $sql = "SELECT * FROM urgence ORDER BY urgence.date DESC, urgence.heure DESC" ; //exécution de la requête: $requete = odbc_do($cnx, $sql) ; //affichage des données: $i = 1; while($result = odbc_fetch_object( $requete ) ) { $ddhh= substr($result->date, -4)."-".substr($result->date, -7,2)."-".substr($result->date,-14, 2)." ".$result->heure; $TotalLigne=$result->N°."__".$result->date."__".$result->heure."__".$result->commentaire."__".$result->mouvement."__".$result->emetteur."__".$result->recepteur. "__".$result->temps."__".$result->numero; $Ligne_NomFichier=3; $Import=$ddhh."','".$result->mouvement."','".$result->emetteur."','".$result->emetteur."','".$result->recepteur."','".$result->temps."','".$result->numero. "','".$TotalLigne."','".$Ligne_NomFichier; // on écrit la requête sql $sql = "INSERT INTO ImportU21Test(DDHH, mouvement,emetteur, recepteur, commentaire, numero, temps, TotalLigne, Ligne_NomFichier) VALUES('".$Import."')"; // on insère les informations du formulaire dans la table mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); echo '</tr>'; $i++; } ?>