SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)
Hilfe Community Kalender Heutige Beiträge Suchen

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 28.05.2011, 23:13:58
Daktari Daktari ist offline
Anfänger
 
Registriert seit: Apr 2011
Alter: 52
Beiträge: 49
absteigende Sortierung wird ignoriert

Guten Abend!

Mein Code schaut so aus:
PHP-Code:
      $sql2  "SELECT tabAuftrag.Auftragsnr, date_format(EDatum, '%d.%m.%y') as EDatum,
tabAuftragArtikel.Artikelnr,  tabAdressen.RFirma1,  tabAdressen.RStadt,   tabAuftragArtikel.Summe, 
tabAuftragArtikel.Rabatt,  tabAuftrag.Kundenref, tabAuftragArtikel.RepNr, tabAdressen.Kundennummer, 
tabAuftrag.LAFirma1,  tabAuftrag.LAStadt,  tabAuftrag.KuBestellnr,  tabAuftragArtikel.MengeAA,
tabAuftragArtikel.ZolltarifnrA, tabAuftragArtikel.Ursprung,  tabAdressen.RLand
FROM          tabAdressen RIGHT OUTER JOIN
                  tabAuftrag RIGHT OUTER JOIN
                  tabAuftragArtikel ON  tabAuftrag.Auftragsnr =  tabAuftragArtikel.Auftragsnr ON
                  tabAdressen.Kundennummer =  tabAuftrag.Kundennr
                WHERE tabAuftrag.Auftragsnr = :0
        ORDER BY tabAuftrag.Auftragsnr DESC;"
;
$stmt2 $this->dbh->vorbereiten($sql2);
$stmt2->ausfuehren($daten->Auftragsnr); 
..egal nach welcher Spalte ich absteigend sortieren möchte, es wird immer ignoriert.
Was ist der Grund dafür?

Vielen Dank für Eure Hilfe!

Gruß
Stefan
Mit Zitat antworten
  #2  
Alt 29.05.2011, 11:30:23
thomas_w thomas_w ist offline
Junior Member
 
Registriert seit: Aug 2010
Alter: 14
Beiträge: 395
AW: absteigende Sortierung wird ignoriert

Ohne Testdaten ist das schwer zu sagen und was Dein PHP-Code wirklich macht, ist nicht ersichtlich.
Dein Beispiel sortiert nach einer Spalte tabAuftrag.Auftragsnr die Aufgrund des OUTER JOIN den Wert NULL annehmen kann und NULL sortiert sich nun mal nicht wie erwartet.
Code:
SELECT tabAuftrag.Auftragsnr
     , date_format(EDatum, '%d.%m.%y') AS EDatum
     , tabAuftragArtikel.Artikelnr
     , tabAdressen.RFirma1
     , tabAdressen.RStadt
     , tabAuftragArtikel.Summe
     , tabAuftragArtikel.Rabatt
     , tabAuftrag.Kundenref
     , tabAuftragArtikel.RepNr
     , tabAdressen.Kundennummer
     , tabAuftrag.LAFirma1
     , tabAuftrag.LAStadt
     , tabAuftrag.KuBestellnr
     , tabAuftragArtikel.MengeAA
     , tabAuftragArtikel.ZolltarifnrA
     , tabAuftragArtikel.Ursprung
     , tabAdressen.RLand
FROM  tabAdressen
RIGHT OUTER JOIN tabAuftrag
   ON tabAdressen.Kundennummer = tabAuftrag.Kundennr
RIGHT OUTER JOIN tabAuftragArtikel
   ON tabAuftrag.Auftragsnr = tabAuftragArtikel.Auftragsnr
WHERE   tabAuftrag.Auftragsnr = 1
ORDER BY  tabAuftrag.Auftragsnr DESC;
Kannst Du auf die OUTER JOIN verzichten?

Grüße
Thomas
__________________
Die SQL-Backstube
Bietet Rezepte, Lösungen und ausführliche Beispiele rund um gesundes SQL und zufriedene Datenbanken.
Mit Zitat antworten
  #3  
Alt 29.05.2011, 13:13:35
Daktari Daktari ist offline
Anfänger
 
Registriert seit: Apr 2011
Alter: 52
Beiträge: 49
AW: absteigende Sortierung wird ignoriert

Hi!

Der PHP-Code funktioniert an anderer Stelle ohne Probleme, wird sehr häufig so eingesetzt.
Die Funktionen sind diese hier:
PHP-Code:
public function vorbereiten($sql){

    if(!
$this->verbindung){
      
$this->verbinden();
    }
    return new 
MySQLStatement($this->verbindung$this->mysql_ext$sql);


und

PHP-Code:
public function ausfuehren(){

    
$args func_get_args();
    if(
count($args) == && is_array($args[0])){
      
$args $args[0];
    }
    
$this->SQLersetzen($args);

    if(
$this->mysql_ext == 'mysql'){
        
$this->ergebnis mysql_query($this->sql$this->verbindung);
    }
    else{
        
$this->ergebnis $this->verbindung->query($this->sql);
    }

    if(!
$this->ergebnis){
      if(
$this->mysql_ext == 'mysql'){
          
$error mysql_error($this->verbindung);
      }
      else{
          
$error $this->verbindung->error;
      }
      if(
ERRORS)
        die(
'<p><strong>Datenbank-Fehler</strong>:<br />' FEHLERMELDEN '</p>
             <p><strong>Fehler in Query:</strong><br />' 
$error '</p>
             <p><strong>Kompletter SQL-String:</strong><br />' 
$this->sql);
      die(
UNBEKANNTERFEHLER);
    }


Ich hatte den Fehler im Select selbst vermutet, vllt in der WHERE-Bedingung!? Was mich so irritiert ist, dass die Sortierung im Query-Browser einwandfrei funktioniert. Allerdings muss ich dort die WHERE-Bedingung weglassen, da die dort ja nicht interpretiert werden kann.
Ob ich auf die OUTER JOINs verzichten kann muss ich mal prüfen..

Danke und Gruß
Stefan
Mit Zitat antworten
  #4  
Alt 29.05.2011, 14:00:53
Ckaos Ckaos ist offline
Member
 
Registriert seit: Nov 2007
Beiträge: 843
AW: absteigende Sortierung wird ignoriert

Hi

PHP-Code:
WHERE tabAuftrag.Auftragsnr = :0
        ORDER BY tabAuftrag
.Auftragsnr DESC;"; 
Scherzfrage?
WHERE und dann darauf nen ORDER BY?

erinnert mich an die Bundeswehr
Zitat:
Alle die 1,70m groß sind vortreten und der Größe nach aufstellen!
omg

mfg

CKaos
__________________
"Wenn die Leute Häuser so bauen würden, wie wir Programme schreiben, würde der erstbeste Specht unsere Zivilisation zerhacken."
In den allermeisten Fällen sitzt der Bug etwa 40 cm vor dem Monitor!
Mit Zitat antworten
  #5  
Alt 29.05.2011, 14:03:33
thomas_w thomas_w ist offline
Junior Member
 
Registriert seit: Aug 2010
Alter: 14
Beiträge: 395
AW: absteigende Sortierung wird ignoriert

Hallo Ckaos,

Zitat:
Zitat von Ckaos Beitrag anzeigen
PHP-Code:
WHERE tabAuftrag.Auftragsnr = :0
        ORDER BY tabAuftrag
.Auftragsnr DESC;"; 
Scherzfrage?
WHERE und dann darauf nen ORDER BY?
Stimmt, dass wird der Fehler sein! Habe ich komplett übersehen.

Grüße
Thomas
__________________
Die SQL-Backstube
Bietet Rezepte, Lösungen und ausführliche Beispiele rund um gesundes SQL und zufriedene Datenbanken.
Mit Zitat antworten
Antwort


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

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Sortierung Oskar MySQLi/PDO/(MySQL) 1 12.11.2009 18:27:47
Sortierung über 2 Felder noreux MySQLi/PDO/(MySQL) 2 19.02.2009 10:02:46
HTML in PHP-Datei: <div style=...> wird ignoriert! stille_quelle PHP Grundlagen 8 15.05.2006 10:53:14
"Natürliche" Sortierung möglich? Skyman MySQLi/PDO/(MySQL) 8 09.06.2004 00:23:58
im iframe umgekehrte Sortierung beim Opera Ernesto PHP für Fortgeschrittene und Experten 1 30.10.2002 15:15:13


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:23:04 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt