Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14
  1. #11
    Anfänger
    Registriert seit
    20.04.2009
    Beiträge
    26

    Standard

    jez wäre es perfekt wenn er nicht alles löscht was doppelt ist sondern noch einen eintrag davon behält

  2. #12
    Kevin Lee Poulsen Avatar von VeN0m
    Registriert seit
    30.12.2008
    Beiträge
    1.270

    Standard

    Tut es - Bei mir jedenfalls:

    PHP-Code:

        
    while($row mysql_fetch_row($res)) {

        if(
    in_array($row[1],$all)) {

            
    $query "DELETE FROM `datenbank`.`tabelle` WHERE `tabelle`.`id` = '".$row[0]."'";
            
    mysql_query($query);
            continue;

        }

        
    $all[$row[0]] =  $row[1];

        } 
    Die Schleife müsste man in der Form kennen. Sie wertet den Query aus. So jetzt haben wir eine if-Abfrage, die prüft, ob in dem Array $all bereits dieser User drin vorkommt (ich habe es jetzt nur mit dem User gemacht gehabt), wenn nicht wird er eingetragen. Wenn er doch schon vorkommt wird die entsprechende ID des nächsten Eintrages, der dann ja doppelt ist nicht eingetragen in das Array sondern aus der Datenbank gelöscht und zum nächsten Eintrag gesprungen. Einer bleibt also immer vorhanden.

    Falls Du das Passwort auch in die Suche integrieren möchtest:

    PHP-Code:
    <?php

    $host 
    "localhost";
    $user "root";
    $pw "";
    $db "security";

    $con = @mysql_connect($host,$user,$pw);
    @
    mysql_select_db($db);

    if(!
    $con) {

        die(
    "Connectien denied for user ".$user." at ".$host."!");

    } else {
     
        
    $query "SELECT * FROM `security`.`into_dumpfile`";
        
    $res mysql_query($query);
        
    $all = array();

        while(
    $row mysql_fetch_row($res)) {

        if(
    in_array($row[1].$row[2],$all)) {

            
    $query "DELETE FROM `security`.`into_dumpfile` WHERE `into_dumpfile`.`id` = '".$row[0]."' LIMIT 1";
            
    mysql_query($query);
            continue;

        }

        
    $all[$row[0]] =  $row[1].$row[2];

        }

    }

    ?>
    Wäre vielleicht sinnvoller, da die Leute auch mal Falscheingaben machen ^^.
    Im übrigen gehe ich von so einer Tabelle aus (in etwa):
    id | user | password
    oder
    id | user | pwd
    Wie sie eben bei Dir heißen.
    Das wären dann von links durchnummeriert: $row[0], $row[1] und $row[2]. Müsstest Du auch dementsprechend anpassen.
    Das Script von oben läuft bei mir perfekt, Einträge, bei denen User und Passwort gleich waren wurden entfernt - Einer wurde belassen.
    Come to the dark side - We have cookies

  3. #13
    Anfänger
    Registriert seit
    20.04.2009
    Beiträge
    26

    Standard

    ich hab nur user und pwd
    Das Script von oben läuft bei mir perfekt, Einträge, bei denen User und Passwort gleich waren wurden entfernt - Einer wurde belassen.
    bei mir wird alles gelöscht bis auf das das was nur einmal da war

    //edit jez gehts hab da das LIMIT 1 hinter gesetzt
    Geändert von 113puma (05.08.2009 um 19:35 Uhr)

  4. #14
    Kevin Lee Poulsen Avatar von VeN0m
    Registriert seit
    30.12.2008
    Beiträge
    1.270

    Standard

    Zitat Zitat von 113puma
    //edit jez gehts hab da das LIMIT 1 hinter gesetzt
    Ja, ich vergaß - Sollte immer bei Updates, Deletes etc. hinzu, damit nichts falsches passiert. Hatte ich schon hinzueditiert.
    Ist mit dem vergessen von $i++ mein häufigster Fehler :>.
    Naja, Hauptsache es geht nun .
    Come to the dark side - We have cookies

  5. Folgende Benutzer haben sich für diesen Beitrag bedankt:

    113puma (05.12.2010)

Seite 2 von 2 ErsteErste 12

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •