Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 20 von 23

Thema: SQL Query gesucht ...

  1. #1
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217

    Frage SQL Query gesucht ...

    Wenn ich meiner vB3 Datenbak einen Haufen PMßs habe, die ALLE den selben Titel und Inhalt haben, wie kann ich die per SQL Query wieder löschen ?

    Beim vB2 war das ganz einfach so ...
    DELETE FROM privatemessage WHERE title="Hier der Titel der PM";

    Thxx
    Smoker

  2. #2
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Kann mir da echt keiner Helfen ???

    bye
    Smoker

  3. #3
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5

    Idee

    Das ist leider mit einem SQL nicht so ohne weiteres machbar da anscheinend die PN's nun in zwei Tabellen sind. PM und PMTEXT. PMRECEIP müsste in diesem Fall davon unabhängig sein.

    Aber folgender PHP-Code sollte das erledigen. (ungetestet!)

    PHP-Code:
     <?php 
    // ####################### SET PHP ENVIRONMENT ########################### 
    error_reporting(E_ALL & ~E_NOTICE); 
    // #################### DEFINE IMPORTANT CONSTANTS ####################### 
    require_once('./global.php'); 
    $getpn $DB_site->query("SELECT * FROM PMTEXT WHERE title = 'Titelderpn'");
    $in "0";
    while (
    $pn $DB_site->fetch_array($getpn) {
     
    $in.=", ".$pn['pmtextid'];
    }
     
    $DB_site("DELETE FROM PM WHERE PMTEXTID IN (".$in.")");
     
    $DB_site("DELETE FROM PMTEXT WHERE PMTEXTID IN (".$in.")");
    ?>
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

  4. #4
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Danke, aber es kommt diese Fehlermeldung ...

    Parse error: parse error in /homepages/20/d69779369/htdocs/testboard/del_pms.php on line 8



    bye
    Smoke

  5. #5
    vB-Experte Avatar von Maddrax
    Registriert seit
    04.03.2002
    Ort
    Taucha b. Leipzig
    Beiträge
    817
    hier: $getpn) müsste noch ne ) dahinter (Zeile 8)
    MfG
    Maddrax

  6. #6
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5
    Ups. Ja, richtig. ) fallenlassen. *hebauf*
    sorry.
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

  7. #7
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Jetzt kommt dieser Fehler ....

    Ungueltige SQL-Abfrage: SELECT * FROM PMTEXT WHERE title = 'Titelderpn'
    mysql error: Table 'db76028729.PMTEXT' doesn't exist
    Schreibe ich PMTEXT klein und alles andere was Tabellen betrifft auch, dann kommt dieser Fehler ( egal, ob im Adminverzeichnis oder im Forum verzeichnis ausgeführt ...

    Fatal error: Call to undefined function: object() in /pafd/zum/testboard/admincp/del_pms.php on line 11
    bye
    Smoker

  8. #8
    vB-Experte Avatar von Maddrax
    Registriert seit
    04.03.2002
    Ort
    Taucha b. Leipzig
    Beiträge
    817
    Hast du auch an einen möglichen Tabellenprefix gedacht ?
    Schreib mal vor alle Tabellennamen " . TABLE_PREFIX . " direkt davor.
    MfG
    Maddrax

  9. #9
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Ich verwendet KEINEN Prefix, deswegen sollte das nicht der Fehler sein

    bye
    Smoker

  10. #10
    vB-Experte Avatar von Maddrax
    Registriert seit
    04.03.2002
    Ort
    Taucha b. Leipzig
    Beiträge
    817
    dann schreib alle tabellennamen klein, die sind in der DB auch klein geschrieben und soweit ich weis unterscheidet mysql das wohl
    MfG
    Maddrax

  11. #11
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Zitat Zitat von Maddrax
    dann schreib alle tabellennamen klein, die sind in der DB auch klein geschrieben und soweit ich weis unterscheidet mysql das wohl
    Hatte ich oben ja geschrieben.
    Wenn es groß ist kommt ein SQL Fehler und wenn alles klein ist, kommt dieser Fatal Error.

    bye
    Smoker

  12. #12
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5
    Grumpf. Ich Blödmann. Hier noch mal der korregierte Text.

    PHP-Code:
    <?php 
    // ####################### SET PHP ENVIRONMENT ########################### 
    error_reporting(E_ALL & ~E_NOTICE); 
    // #################### DEFINE IMPORTANT CONSTANTS ####################### 
    require_once('./global.php'); 
    $getpn $DB_site->query("SELECT * FROM pmtext WHERE title = 'Titelderpn'");
    $in "0";
    while (
    $pn $DB_site->fetch_array($getpn)) {
    $in.=", ".$pn['pmtextid'];
    }
    $DB_site->query("DELETE FROM pm WHERE pmtextid IN (".$in.")");
    $DB_site->query("DELETE FROM pmtext WHERE pmtextid IN (".$in.")");
    ?>
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

  13. #13
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Ja, das geht zwar jetzt mit dem Löschen ( DANKE !!!! ), nur setzt es die Anzahl der PM´s nicht runter.
    Jetzt habe ich in meinem testboard zwar meine PM gelöscht, aber es sagt mir noch, das ich eine hätte.

    Das steht ( habe eben mal geschaut ) in der Tabelle ( user ) unter ( pmunread und ( pmtotal ).

    es sollte bei allen bvei denen dann über dieses Script eine PM gelöscht wird auch noch in den 2 Spalten den wert um 1 verkleinern.

    Sonst bekomme ich bald mails, warum User PM´s angezeigt bekommen, obwohl sie keine haben

    bye
    Smoker

  14. #14
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5
    Mach ich Dir heute Abend fertig.
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

  15. #15
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Danke
    Dann kann ich auch endlich den ( Masspm ) hack nutzen

    Thanks
    Smoker

  16. #16
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5
    So. Er prüft nun auch ob die PN gelesen wurde, und nur wenn nicht zieht er eins ab.

    Ich weiss, ist Quick 'n Dirty. Aber sollte funktionieren.

    PHP-Code:
    <?php 
    // ####################### SET PHP ENVIRONMENT ########################### 
    error_reporting(E_ALL & ~E_NOTICE); 
    // #################### DEFINE IMPORTANT CONSTANTS ####################### 
    require_once('./global.php'); 
    $getpn $DB_site->query("SELECT pmtext.pmtextid as pmtextid, pmtext.fromuserid as user, pm.messageread as isread FROM pmtext, pm WHERE title = 'Titelderpn' and pm.pmtextid = pmtext.pmtextid"); 
    $in "0"
    $usertotal "0";
    $userunread "0";
    while (
    $pn $DB_site->fetch_array($getpn)) { 
    $in .= ", " $pn['pmtextid']; 
    $usertotal .= "," $pn['user'];
    if (
    $pn['isread']==0$userunread .= "," $pn['user'];

    $DB_site->query("DELETE FROM pm WHERE pmtextid IN (".$in.")"); 
    $DB_site->query("DELETE FROM pmtext WHERE pmtextid IN (".$in.")"); 
    $DB_site->query("UPDATE user SET pmunread = pmunread - 1 WHERE userid IN (".$userunread.")");
    $DB_site->query("UPDATE user SET pmtotal = pmtotal - 1 WHERE userid IN (".$usertotal.")");
    ?>
    Geändert von Hoffi (04.05.2004 um 22:43 Uhr)
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

  17. #17
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Danke, aber jetzt kommt diese Meldung ...

    Ungueltige SQL-Abfrage: SELECT pmtext.pmtextid as pmtextid, pmtext.forumuserid as user, pm.messageread as read FROM pmtext, pm WHERE title = 'Test' and pm.pmtextid = pmtext.pmtextid
    mysql error: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'read FROM pmtext, pm WHERE title = 'Test' and pm.pmtextid = pmt


    bye
    Smoker

  18. #18
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5
    Oben Korrigiert.
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

  19. #19
    vB-Guru Avatar von Smoker
    Registriert seit
    03.11.2001
    Ort
    LE
    Alter
    37
    Beiträge
    2.217
    Danke aber jetzt kommt das ....

    Ungueltige SQL-Abfrage: SELECT pmtext.pmtextid as pmtextid, pmtext.forumuserid as user, pm.messageread as isread FROM pmtext, pm WHERE title = 'Test' and pm.pmtextid = pmtext.pmtextid
    mysql error: Unknown column 'pmtext.forumuserid' in 'field list'
    Ps.: Sorry, dafür, das ich dich so beanspruche.

    bye
    Smoker

  20. #20
    vB-Guru
    Registriert seit
    20.12.2001
    Ort
    MS-Land
    Alter
    40
    Beiträge
    3.372
    Blog-Einträge
    5
    *hmpf* Den Fehler hatte ich beim Probieren rausgemacht. Naja, nun endlich sollte es gehen. Habs noch mal komplett nachgeschaut.

    Kein Prob, sonst würde ich gar nicht erst Antworten.
    immer ans Backup denken!
    _________________________________

    Blutschwerter.de - Das Rollenspielportal für Pen&Paper

Seite 1 von 2 12 LetzteLetzte

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Suche SQL Query
    Von Smoker im Forum MySQL
    Antworten: 3
    Letzter Beitrag: 28.03.2004, 12:05
  2. SQL fehler beim RC2 !!!!
    Von Smoker im Forum vBulletin 3.0 Fragen und Probleme
    Antworten: 2
    Letzter Beitrag: 16.01.2004, 02:14
  3. eine Query gesucht zum Ersetzen
    Von Bruno Pisarek im Forum MySQL
    Antworten: 3
    Letzter Beitrag: 05.01.2004, 01:42
  4. 0 poster verschieben (query gesucht)
    Von spammotel im Forum vBulletin 2 Fragen und Probleme
    Antworten: 1
    Letzter Beitrag: 20.11.2002, 23:00
  5. Stats auf der Homepage?
    Von Seinfeld im Forum vB2 Code-Hacking Diskussionen
    Antworten: 2
    Letzter Beitrag: 29.10.2002, 21:23

Lesezeichen

Berechtigungen

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