Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Spalten kopieren (Tabelle1 zu Tabelle2) - Probleme

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Spalten kopieren (Tabelle1 zu Tabelle2) - Probleme

    Hi,

    ich möchte eine Spalte aus der einen in die andere Tabelle kopieren.
    Soweit so gut.
    Aber einmal kommt der Fehler: Warning: mysql_fetch_array() expects....
    Jedoch ist der Kopiervorgang durchgeführt!?

    Das andere Problem ist, das Script bring mir einen Dublicate Key Fehler für "ident".
    In Tabelle 1 (tracking) ist der PRIMARY KEY die Spalte "ident"
    In Tabelle 2 (history) ist der PRIMARY KEY die Splate "id"

    Ich finde jedoch den Fehler nicht!

    PHP-Code:
    $ident $_POST['ident']; 
    PHP-Code:
                $sql mysql_query("SELECT ident FROM tracking") or die(mysql_error()); 
                while (
    $ident_result mysql_fetch_array($sql))
                    {
                    if (
    $ident_result['ident'] == $ident) {
                        echo 
    "Gibts schon.";
                        
    $sql "INSERT INTO history (ident, ort, platz, prio, datum)
                                SELECT ident, ort, platz, prio, datum
                                FROM tracking
                                WHERE ident = '"
    .$ident."'";
                        
    mysql_query$sql )
                        OR die(
    "Error: $sql <br>".mysql_error());
                    }
                    }
                
    // Pruefen ob der neue Datensatz tatsaechlich eingefuegt wurde
                
    if (mysql_affected_rows() > 0) {
                    echo 
    "<h3>History erstellt.</h3>"

  • tk1234
    antwortet
    Zitat von TessaKavanagh Beitrag anzeigen
    Seit wann gibt man denn bei mysql_* eine Verbindungskennung mit?
    PHP-Code:
    $sql mysql_query$sql$conID 
    Der zweite Parameter existiert schon ewig/immer - nur da er optional ist verwendet ihn halt kaum jemand ...

    Einen Kommentar schreiben:


  • Schmakus
    antwortet
    Ok, meine Probleme habe ich selbst lösen können.
    In der Datenbank war die Spalte "Ident" als "UNIQUE" deklariert.

    [ERLEDIGT]

    Einen Kommentar schreiben:


  • TessaKavanagh
    antwortet
    Gibt es einen sinnvollen Grund warum du einmal mit dem Spaltennamen ID und einmal mit IDENT arbeitest? Denn ich nehme an das es sich in beiden Fällen um die Eindeutige Identifikationsnummer der Tabellen handelt?

    außerdem wird dir spätestens in fünf Minuten der erste für die Verwendung von mysql_* an die Gurgel gehen. Daher direkt von mir verwende lieber PDO oder MySQLi_*.

    Seit wann gibt man denn bei mysql_* eine Verbindungskennung mit?
    PHP-Code:
    $sql mysql_query$sql$conID 

    Einen Kommentar schreiben:


  • hausl
    antwortet
    Das andere Problem ist, das Script bring mir einen Dublicate Key Fehler für "ident".
    Jetzt habe ich nur noch das DUBLICATE KEY Problem
    Naja, was soll man dazu noch sagen? Übersetze die Meldung ins Deutsche und dann hast du schon den Fehler. Da kann man eigentlich nicht mehr dazu sagen, deine DB hat sicher recht.

    PS: DUPLICATE ...

    Einen Kommentar schreiben:


  • uha
    antwortet
    Zitat von Schmakus Beitrag anzeigen
    Aber einmal kommt der Fehler: Warning: mysql_fetch_array() expects....
    Zitat von Schmakus Beitrag anzeigen
    Jetzt habe ich nur noch das DUBLICATE KEY Problem.....
    Ich sag's mal so: wenn du nicht bereit bist, deine Fragen bzw. Probleme ausführlich zu schreiben, wirst du eher nicht mit Hilfe rechnen können.

    Einen Kommentar schreiben:


  • Schmakus
    antwortet
    Ok, den Fehler: Warning: mysql_fetch_array() expects habe ich gelöst!

    PHP-Code:
    $sql "SELECT ident FROM tracking"
                
    $sql mysql_query$sql$conID )
                OR die(
    "Error: $sql <br>".mysql_error());
                while (
    $ident_result mysql_fetch_array($sql))
                    {
                    if (
    $ident_result['ident'] == $ident) {
                        echo 
    "Gibts schon.";
                        
    $sql "INSERT INTO history (ident, ort, platz, prio, datum)
                                SELECT ident, ort, platz, prio, datum
                                FROM tracking
                                WHERE ident = '"
    .$ident."'";
                        
    mysql_query$sql )
                        OR die(
    "Error: $sql <br>".mysql_error());
                    }
                    } 
    Jetzt habe ich nur noch das DUBLICATE KEY Problem.....

    Einen Kommentar schreiben:

Lädt...
X