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 > 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 09.04.2009, 14:01:37
AlexD AlexD ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 186
Daten der aktuellen Woche abfragen

Hallo,

ich hab hier einen Hänger.
Und zwar möchte ich aus meiner Datenbank alle Datensätze der aktuellen Woche auslesen.
Hintergrund ist, ich möchte alle Trainingsheinheiten der aktuellen woche bzw. die absolvierten Km berechnen.

Mein Ansatzt erzeugt keinen SQL-Fehler, jedoch auch kein Ergebinis.
Meine Überlegung war in der WHERE-Clausel mit WEEK und der aktuellen Woche durch date('W') diese ermitteln zu können.

Hier der Ansatz:
PHP-Code:
//========= KM der akt. Woche ===============
$akt_woche date("W");

$result mysql_query("SELECT mt.runden, st.runde, st.distanz
                         FROM laufen_meintraining mt, laufen_strecken st
                        WHERE mt.user_id = "
.$_SESSION['user_id']."
                           AND mt.strecken_id = st.strecken_id
                           AND WEEK(mt.datum) = "
.$akt_woche."",$db) or trigger_error(mysql_error($db));
if(!
$result){ logfile('sql',error_get_last());}
if(
mysql_affected_rows($db) > 0){

    while(
$week mysql_fetch_array($result)){

        
$distanz_day $_monat['distanz']+($_monat['runden']*$_monat['runde']);
        
$ges_week $ges_week $distanz_day;
    }

} else {

    
$ges_week '---';


Oder lieg ich mit meinem Ansatz ganz falsch?!

Geändert von AlexD (09.04.2009 um 20:29:23 Uhr)
Mit Zitat antworten
  #2  
Alt 09.04.2009, 15:54:04
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Daten der aktuellen Woche abfragen

Ohne den Code jetzt genauer geprüft zu haben, hast Du Dir Dein SQL-Statment schon mal ausgeben lassen und es auf Richtigkeit geprüft? Wie sind Deine beiden Tabellen miteinander verbunden (Schlüssel)?
__________________
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
  #3  
Alt 09.04.2009, 20:40:22
AlexD AlexD ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 186
AW: Daten der aktuellen Woche abfragen

hi vt1816,

also hab das Statement oben nochmal ergänzt, es fehlte in der Tat die Verbindung der Tabellen "AND mt.strecken_id = st.strecken_id".

Die Tabellen sind wie folgt aufgebaut:

laufen_meintraining
trainings_id int(11) primary Key autoincrement
user_id int(11)
strecken_id int (5)
type_id smallint(1)
runden smallint(2)
datum date
laufzeit time

laufen_strecken
strecken_id int(5) primary Key autoincrement
distanz varchar(5)
runde varchar(5)
bezeichnung varchar(200)

hab das Statement auch in PHPmyAdmin laufen lassen, es werden auch hier keine Fehler ausgegeben, leider auch kein Ergebnis.
Mit Zitat antworten
  #4  
Alt 15.04.2009, 00:48:25
AlexD AlexD ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 186
AW: Daten der aktuellen Woche abfragen

Hab noch einen anderen Lösungsansatz.

Und zwar ermittle ich die Tage der aktuellen Woche und hab versucht über BETWEEN diese zu extrahieren.
Lieder klappt das bisher noch nicht so wirklich, es wird kein Fehler aber auch kein Resultat ausgegeben.
Wo liegt denn hier den nur der Fehler?

PHP-Code:
//========= KM der akt. Woche ===============

// Tage der aktuellen Woche ermitteln
$akt_woche date("W");
if(
$week 10){
    
$week "0".$akt_woche;
} else {
    
$akt_woche $akt_woche;
}
for(
$i=1$i<=7$i++) {
    
$dates[$i] = strtotime($jahr.'W'.$akt_woche.$i);
}
$anfang date("Y-m-d",$dates[1]);
$ende   date("Y-m-d",$dates[7]);

include(
'./db_connect/connect_sql.php');

$sql "SELECT mt.runden, st.runde, st.distanz
                         FROM laufen_meintraining mt, laufen_strecken st
                        WHERE (mt.datum BETWEEN "
.$anfang." AND ".$ende.")
                          AND mt.user_id = "
.$_SESSION['user_id'];
                          
$result mysql_query("".$sql."",$db) or trigger_error(mysql_error($db));
if(!
$result){ logfile('sql',error_get_last());}
if(
mysql_affected_rows($db) > 0){
    while(
$week mysql_fetch_array($result)){

        
$distanz_day $week['distanz']+($week['runden']*$week['runde']);
        
$ges_week $ges_week $distanz_day;
    }
} else {
    
$ges_week '---';


Geändert von AlexD (16.04.2009 um 15:34:39 Uhr)
Mit Zitat antworten
  #5  
Alt 15.04.2009, 23:21:04
Benutzerbild von urvater
urvater urvater ist offline
Senior Member
 
Registriert seit: Feb 2006
Ort: Wallrabenstein
Alter: 56
Beiträge: 1.044
AW: Daten der aktuellen Woche abfragen

Ich glaub so müsste die IF-Anweisung lauten. $db ist ja sicher nur der Konnekt zur DB.
PHP-Code:
if(mysql_affected_rows($result 0)) 

Geändert von urvater (15.04.2009 um 23:22:09 Uhr)
Mit Zitat antworten
  #6  
Alt 16.04.2009, 15:26:59
AlexD AlexD ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 186
AW: Daten der aktuellen Woche abfragen

Hi,

glaub nicht das es daran liegt, denn ich nutze es so schon bei vielen Abfragen.
Hab es aber mal ausprobiert.... bekomm dann einen SQL-Fehler
Warning: mysql_affected_rows(): supplied argument is not a valid MySQL-Link resource in F:\http\entwicklung\startseite\user_groups\laufsport\laufen_start.php on line 121

hab das Statement nochmal ein wenig geändert, und zwar jetzt nicht mit BETWEEN sondern einfach mit den Vergleichs-Operatoren >= und <=

hier das Statement, der Rest ist wie oben.
PHP-Code:
$sql "SELECT mt.runden, st.runde, st.distanz
                         FROM laufen_meintraining mt, laufen_strecken st
                        WHERE mt.datum >= "
.$anfang."
                          AND mt.datum <= "
.$ende."
                          AND mt.user_id = "
.$_SESSION['user_id']; 
leider bekomm ich auch hier keine Resultat geliefert... nix.
Irgendwie versteh ichs ned mehr.

Die entsprechende SQL-Spalte ist vom Type [date] und die aktuellen Tage der Woche lass ich auch auf das Format 'Y-m-d' mit der PHP-Funktion date() formatieren.

Geändert von AlexD (16.04.2009 um 15:29:39 Uhr)
Mit Zitat antworten
  #7  
Alt 16.04.2009, 15:42:58
Crisps Crisps ist offline
Junior Member
 
Registriert seit: Oct 2008
Alter: 47
Beiträge: 274
AW: Daten der aktuellen Woche abfragen

Poste doch bitte mal einen Beispieldatensatz der beiden Tabellen.
Mit Zitat antworten
  #8  
Alt 16.04.2009, 15:53:18
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Daten der aktuellen Woche abfragen

PHP-Code:
$sql "SELECT mt.runden, st.runde, st.distanz
                         FROM laufen_meintraining mt, laufen_strecken st
                         WHERE mt.datum >= "
.$anfang."
                         AND mt.datum <= "
.$ende."
                         AND mt.user_id = "
.$_SESSION['user_id']; 
Hast Du Dir schon mal Dein Statment per

PHP-Code:
echo $sql
ausgeben lassen? Stehen dort die Werte/Bedingungen wie Du sie erwartest drin?
__________________
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
  #9  
Alt 16.04.2009, 19:38:49
AlexD AlexD ist offline
Junior Member
 
Registriert seit: Jun 2003
Beiträge: 186
AW: Daten der aktuellen Woche abfragen

also $sql gibt mir folgendes aus

Code:
SELECT mt.runden, st.runde, st.distanz FROM laufen_meintraining mt, laufen_strecken st WHERE mt.datum >= 2009-04-13 AND mt.datum <= 2009-04-19 AND mt.user_id = 1
Ein Beispiel-Datensatz:
laufen_meintraining
trainings_id 1
user_id 1
strecken_id 1
runden 1
datum 2009-04-16
laufzeit 00:56:42

laufen_strecken
strecken_id 1
distanz 0.92
runde 8.55
bezeichnung kleine Dorfrunde
Mit Zitat antworten
  #10  
Alt 16.04.2009, 20:13:55
Benutzerbild von vt1816
vt1816 vt1816 ist offline
Administrator
 
Registriert seit: Jul 2004
Beiträge: 3.707
AW: Daten der aktuellen Woche abfragen

Es fehlen die ' um die Datumsangaben:
PHP-Code:
$sql "SELECT mt.runden, st.runde, st.distanz 
                         FROM laufen_meintraining mt, laufen_strecken st 
                         WHERE mt.datum >= '"
.$anfang."' 
                         AND mt.datum <= '"
.$ende."' 
                         AND mt.user_id = "
.$_SESSION['user_id']; 
Dann klappt es auch mit der Abfrage:

Zitat:
runden runde distanz
1 8.55 0.92
__________________
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
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
Daten aus csv-Datei in zwei Tabellen speichern sputnik72 PHP Grundlagen 6 13.08.2007 16:12:15
Abfragen innerhalb while-schleife AlexD MySQLi/PDO/(MySQL) 0 05.11.2006 15:15:25
Daten von PHP an PHP übergeben! OlliT PHP für Fortgeschrittene und Experten 4 02.11.2004 10:16:55
Daten aus 2 mysql-tabellen ausgeben xnay PHP Grundlagen 1 13.12.2003 17:33:43
Datum des Montags der aktuellen Woche ermitteln. or-k PHP für Fortgeschrittene und Experten 2 17.07.2002 00:25:22


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:19:50 Uhr.


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


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