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 ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign 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 > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #11  
Alt 20.12.2007, 14:44:32
rambi
Guest
 
Beiträge: n/a
AW: Klassenliste erstellen

<subjektiv>
Iiiihhh... PDO
</subjektiv>

Geändert von rambi (20.12.2007 um 14:44:44 Uhr)
Mit Zitat antworten
  #12  
Alt 20.12.2007, 15:00:15
mrmoechen mrmoechen ist offline
Anfänger
 
Registriert seit: Dec 2007
Beiträge: 14
AW: Klassenliste erstellen

Jetzt steh ich wieder an.
Ich möchte das Ergebnis in Tabellenform bringen. Nur mit den Zeilen und Spalten, das krieg ich nicht hin.
Falls sich jemand erbarmt, ich wäre sehr glücklich über einen Vorschlag.
Mit Zitat antworten
  #13  
Alt 20.12.2007, 15:33:26
mrmoechen mrmoechen ist offline
Anfänger
 
Registriert seit: Dec 2007
Beiträge: 14
AW: Klassenliste erstellen

jetzt steh ich wieder an. :( Ich möchte das Ergebnis in Tabellenform bringen, komm aber mit den Spalten und Zeilen nicht klar.
Falls sich jemand meiner erbarmt, wäre ich ihm sehr dankbar.
Mit Zitat antworten
  #14  
Alt 20.12.2007, 15:48:10
Tumasch Tumasch ist offline
Junior Member
 
Registriert seit: Dec 2007
Beiträge: 151
AW: Klassenliste erstellen

Hab da mal was kleines zusammengepfriemelt, hoffe das funzt. Ist 'n mix aus meinem code und der von def, hoffe das passo so zusammen. Habe keine Klassenliste, drum konnt'ichs nicht testen :-)

PHP-Code:
// Verbindung zum Mysql Server herstellen
        
$verbindung mysql_connect("xxx""xxx""xxx");
        
// wenn mysql_connect fehl schlägt, liefert es false zurück
        // also:  wenn !$verbindung, dann Verbindung fehlgeschlagen
        
if (!$verbindung) {
            echo 
'Verbindung zum Mysql Server ist fehlgeschlagen. ' mysql_error();
            exit ();
        }
        
// Datenbank auswählen
        
$dbselect mysql_select_db('xxx'$verbindung);
        
// mysql_select_db liefert false, wenn die Datenbank nicht gewählt werden kann
        
if (!$dbselect) {
            echo 
'Datenbank konnte nicht ausgewählt werden. ' mysql_error($verbindung);
            exit ();
        }
        
// SQL Anfrage an den Mysql Server schicken
        
$sql "SELECT name, klasse FROM jos_users ORDER BY klasse";
        
$res mysql_query($sql$verbindung);
        
// mysql_query liefert false, wenn ein Fehler aufgetreten ist.
        
if (!$res) {
            echo 
'Fehler bei der SQL Anfrage. ' mysql_error($verbindung);
            exit ();
        }
        
$aktuelle_klasse null;
        
// Alle Datensätze abarbeiten, einen nach dem anderen
        
$int_sql_rowcounts = @ mysql_num_rows($res);
        
$int_sql_colcounts = @ mysql_num_fields($res);
        
//
        // Datensätze anzeigen
        //
        
if ($int_sql_rowcounts 0) {
            
debug('Datensätze anzeigen');
            while (
$row mysql_fetch_array($resMYSQL_ASSOC)) {
                
// wenn sich die Klasse geändert hat
                
if ($aktuelle_klasse !== $row['klasse']) {
                    
// neue KLasse ausgeben
                    
if ($aktuelle_klasse == null) {
                        echo 
'</table>' "\n";
                    }
                    echo 
'<table class="standardtable">' "\n";
                    echo 
'  <tr class="titelzeile">' "\n";
                    echo 
'    <td colspan="' $int_sql_colcounts '" class="tabletitel titelschrift">' $row['klasse'];
                    echo 
'  </tr>' "\n";
                    echo 
'  <tr class="tablesubtitel">' "\n";
                    
debug('Spalten anzeigen');
                    for (
$int_temp_counter 0$int_temp_counter $int_sql_colcounts$int_temp_counter++) {
                        
//
                        // Spaltentitel anzeigen
                        //
                        
echo '    <td>' mysql_field_name($res$int_temp_counter) . '</td>' "\n";
                    }
                    echo 
'  </tr>' "\n";
                    
// und als aktuelle Klasse speichern
                    
$aktuelle_klasse $row['klasse'];
                }
                
debug('Zeilen ausgeben');
                
$int_temp_counter2 0;
                while (
$int_sql_resultarray mysql_fetch_array($res)) {
                    
//
                    // Jede Zeile ausgeben
                    //
                    
$int_temp_counter2++;
                    echo 
'  <tr';
                    if (
$int_temp_counter2 == 0) {
                        echo 
' class="markrows"';
                    }
                    echo 
'>' "\n";
                    for (
$int_temp_counter 0$int_temp_counter $int_sql_colcounts$int_temp_counter++) {
                        echo 
'    <td>' $int_sql_resultarray[$int_temp_counter] . '</td>' "\n";
                    }
                    echo 
'  </tr>' "\n";
                }
            }
            echo 
'</table>' "\n";
        } else {
            
debug('Keine Daten');
            echo 
'<table class="standardtable">' "\n";
            echo 
'  <tr>' "\n";
            echo 
'    <td class="titelschrift blauschrift">' "\n";
            echo 
'      Keine Daten!';
            echo 
'    </td>' "\n";
            echo 
'  </tr>' "\n";
            echo 
'</table>' "\n";
        } 
Mit Zitat antworten
  #15  
Alt 20.12.2007, 16:35:00
Opendix Opendix ist offline
Senior Member
 
Registriert seit: Oct 2004
Ort: Werdenberg / Schweiz
Alter: 35
Beiträge: 1.476
AW: Klassenliste erstellen

Im Fehlerfall? Dieser Fehlerfall dürfte doch eigentlich schon beim ersten Versuch von mysql_connect() bekannt sein, sollte das nicht funktionieren macht der MSQL-Server eine Pause, ansonsten steht die Verbindung und dann wird auch nicht irgendeine andere Aufgebaut (nehme ich mal an :P)

Aber jo, ich empfinde das einfach als zusätzlichen Schreibaufwand...
PDO kenn ich leider zuwenig um da wirklich wa dazu sagen zu können :P
__________________
Opendix lehnt jegliche Haftung für evtl. vorhandene Fehler in der Grammatik sowie der Satzstellung ab! Bitte wenden Sie sich an die Tastatur!

Betatester gesucht:
Skiclub Gams / CEVI Grabs
Mit Zitat antworten
  #16  
Alt 20.12.2007, 18:20:51
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: Klassenliste erstellen

Zitat:
Zitat von Opendix Beitrag anzeigen
ansonsten steht die Verbindung und dann wird auch nicht irgendeine andere Aufgebaut (nehme ich mal an :P)
Die Verbindung kann aber auch abbrechen, zum Beispiel mit einer CR_SERVER_GONE_ERROR Meldung.
Mein letztes Beispiel mit pdo umgesetzt kann so aussehen
PHP-Code:
<?php
$pdo 
= new PDO('mysql:host=localhost;db=meineDatenbank''user''password');
$pdo->setAttribute(PDO::ATTR_ERRMODEPDO::ERRMODE_EXCEPTION);
$aktuelle_klasse null;
foreach( 
$pdo->query('SELECT name, klasse FROM jos_users ORDER BY klasse') as $row ) {
  if ( 
$aktuelle_klasse!==$row['klasse'] ) {
    echo 
'== ' $row['klasse'] . " ==<br />\n";
    
$aktuelle_klasse $row['klasse'];
  }
  echo 
' # ' $row['name'] . "<br />\n";
}
?>
Durch PDO::ERRMODE_EXCEPTION kann ich es mir ersparen, an jeder Ecke und Funktion und Schleifen usw eine Fehlerroutine zu schreiben. Die kommt nur da hin, wo der Fehler wirklich interessant ist.
Prepared statements sind schön schnell und named paramters sparen Aufrufe von escape/quote_string(). pdo ist keine dicke, lahme Datenbankabstraktion sondern eine schnelles, kleines Interface für verschiedene Datenbanken.
So, Ende der Kurzwerbung.
p.s.: Und jetzt bitte keine Diskussion um "aber meine eigene nur für mich selbst geschrieben Datenbankklasse ist viel besser" anfangen ;-)
__________________
Wat der Bauer nich kennt, dit frisster nich.

Geändert von defabricator (20.12.2007 um 18:21:58 Uhr)
Mit Zitat antworten
  #17  
Alt 20.12.2007, 19:31:15
mrmoechen mrmoechen ist offline
Anfänger
 
Registriert seit: Dec 2007
Beiträge: 14
AW: Klassenliste erstellen

Danke tumasch für die Mühe, aber es funktioniert nicht:
Die Fehlermeldung:

"Fatal error: Call to undefined function debug() in C:\Programme\... on line 41"


Line 41:
PHP-Code:
debug('Datensätze anzeigen'); 
Viell. ist ja was falsch, bei diesem Code blicke ich jedoch leider nicht mehr durch ;)
Mit Zitat antworten
  #18  
Alt 20.12.2007, 19:38:45
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Klassenliste erstellen

Zitat:
Zitat von mrmoechen Beitrag anzeigen
...

PHP-Code:
debug('Datensätze anzeigen'); 
...
Kommentiere die Zeilen mit der Funktion Debug() erstmal und versuche es erneut.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #19  
Alt 20.12.2007, 20:08:53
mrmoechen mrmoechen ist offline
Anfänger
 
Registriert seit: Dec 2007
Beiträge: 14
AW: Klassenliste erstellen

Ich habe jetzt alle drei debug-Funktionen kommentiert, dann gibt er folgendes aus (es sind 2 Spalten, nur weiß ich nicht, wie das darzustellen ist):

4a
name klasse
Johannes 5a
Simon 5a
Josef 5a
Moritz 5b


name und klasse sind ja wahrscheinlich spaltentitel??

Er gibt also nur einmal den spaltentitel aus, und vom Schüler der 4a keinen namen.

Naja, viell. kennt sich jemand aus.

Danke nochmal für eure Geduld.
Mit Zitat antworten
  #20  
Alt 20.12.2007, 20:20:54
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: Klassenliste erstellen

Zitat:
Zitat von mrmoechen Beitrag anzeigen
Viell. ist ja was falsch, bei diesem Code blicke ich jedoch leider nicht mehr durch ;)
Dann birngt Dir das nichts. Arbeite den Code erstmal durch, so dass Du möglich viel davon verstehst und dann frag nach den restelichen Teilen.
__________________
Wat der Bauer nich kennt, dit frisster nich.
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
php script zum erstellen von postfächern kiss-hering PHP Grundlagen 16 11.07.2007 17:31:57
MySQL DB über PHP Skript erstellen Golf-Onkel MySQLi/PDO/(MySQL) 1 22.12.2004 22:18:24
Erstellen einer Datei durch einen Script LLlypa PHP Grundlagen 3 05.06.2004 10:26:14
PDF erstellen im A4 Querformat helge008 PHP für Fortgeschrittene und Experten 1 02.04.2004 19:17:41
Variablenname dynamisch erstellen?! s4int PHP für Fortgeschrittene und Experten 2 25.05.2003 12:26:45


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:29:05 Uhr.


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


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