php.de

Zurück   php.de > Lösungen durch Skripte > Scriptbörse

Scriptbörse PHP Lösungen für nen schmalen Taler

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 11.11.2011, 01:30  
Neuer Benutzer
 
Registriert seit: 11.11.2011
Beiträge: 3
PHP-Kenntnisse:
Anfänger
swissgenealogy befindet sich auf einem aufstrebenden Ast
Standard Mysql Abfrage für pchart

Hallo Zusammen,

Ich entschuldige mich schonmal vorab, dass ich als blutiger Anfänger euch hier belästige. Aber bisher waren alle meine Bemühungen (spezialisierte Foren, Mailinglisten, Selbstversuche) völlig umsonst.
Die tallentierten Spezialisten hier im Forum sind sozusagen meinen letzte Hoffnung.

Ich nutze für meine Seite zum Thema Ahnenforschung eine fertig PHP Skript-Sammlung (The Next Generation of Genealogy Site Building ("TNG") - http://lythgoes.net/genealogy/software.php).
Diese beinhaltet eine Oberfläche in der man SQL SELECT Statements zur Erzeugung von Reports erfassen kann. Einige deutlich mehr bewanderte Nutzer des Skriptes haben ihre Beispiele uns anderen zur Verfügung gestellt.

Hier zum Beispiel für den Report - Hochzeiten je Kalendermonat:
PHP-Code:
SELECT MONTHNAME(marrdatetr) AS month_in_which_marriedMONTH(marrdatetr) AS month_of_marriageCOUNT(*) AS TotalsRPAD('',COUNT(*)/10,'=') AS Graphic FROM tng_families WHERE MONTH(marrdatetr)>0 GROUP BY month_of_marriage
Daraus kreiert die Skript-Sammlung dieses Ergebnis: http://www.ahnendaten.de/ahnen/showr...hp?reportID=44


Ich hoffe diese Auswertungen mittels des PHP Chart Skripts pChart (http://www.pchart.net/) grafisch darstellen zu können.

Aber ich habe überhaupt gar keinen Ahnung wie ich es anstellen soll.


Es gibt ein allgemeines Beispiel für die Mysql Abfrage für pChart unter: http://wiki.pchart.net/doc.mysql.integration.html
aber ich verstehe zu wenig von dem Code um ihn anpassen zu können.
PHP-Code:
/* Include the pData class */
include("class/pData.class.php");

/* Create the pData object */
$MyData = new pData();  

/* Connect to the MySQL database */
$db mysql_connect("localhost""dbuser""dbpwd");
mysql_select_db("pchart",$db);

/* Build the query that will returns the data to graph */
$Requete "SELECT * FROM `measures`";
$Result  mysql_query($Requete,$db);
$timestamp=""$temperature=""$humidity="";
while(
$row mysql_fetch_array($Result))
 {
  
/* Push the results of the query in an array */
  
$timestamp[]   = $row["timestamp"];
  
$temperature[] = $row["temperature"];
  
$humidity[]    = $row["humidity"];
 }

/* Save the data in the pData array */
$myData->addPoints($timestamp,"Timestamp");
$myData->addPoints($temperature,"Temperature");
$myData->addPoints($humidity,"Humidity");

/* Put the timestamp column on the abscissa axis */
$myData->setAbscissa("Timestamp");

/* Associate the "Humidity" data serie to the second axis */
$myData->setSerieOnAxis("Humidity"1);

/* Name this axis "Time" */
$myData->setXAxisName("Time");

/* Specify that this axis will display time values */
$myData->setXAxisDisplay(AXIS_FORMAT_TIME,"H:i");

/* First Y axis will be dedicated to the temperatures */
$myData->setAxisName(0,"Temperature");
$myData->setAxisUnit(0,"°C");

/* Second Y axis will be dedicated to humidity */
$myData->setAxisName(1,"Humidity");
$myData->setAxisUnit(0,"%"); 
Ich freue mich über absolut JEDE hilfreiche Antwort.
Im Voraus vielen Dank für Ihre Mühe.
Und Herzliche Grüsse aus der Schweiz
Ingo
swissgenealogy ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 11.11.2011, 05:01  
Erfahrener Benutzer
 
Benutzerbild von mermshaus
 
Registriert seit: 14.06.2009
Beiträge: 1.733
PHP-Kenntnisse:
Fortgeschritten
mermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz seinmermshaus kann auf vieles stolz sein
Standard

Willkommen im Forum.

Dein Thread fällt ziemlich in diesen Bereich:

http://www.php.de/php-einsteiger/675...sumfragen.html (Inserate, Konzepte und Meinungsumfragen)
__________________
Blog | Buch | Kaloa
mermshaus ist gerade online   Mit Zitat antworten
Alt 11.11.2011, 10:48  
Erfahrener Benutzer
 
Benutzerbild von lstegelitz
 
Registriert seit: 07.09.2009
Beiträge: 4.005
PHP-Kenntnisse:
Fortgeschritten
lstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nettlstegelitz ist einfach richtig nett
Standard

Zitat:
Zitat von swissgenealogy Beitrag anzeigen
Aber ich habe überhaupt gar keinen Ahnung wie ich es anstellen soll.

[...]

aber ich verstehe zu wenig von dem Code um ihn anpassen zu können.
Auf dieser Basis ist wohl auch der Hinweis auf die Scriptbörse angebracht, denn es sieht nicht danach aus, als könne man dir konstruktive Ansätze zum Selbermachen geben.
__________________
Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.
lstegelitz ist offline   Mit Zitat antworten
Alt 11.11.2011, 23:44  
Neuer Benutzer
 
Registriert seit: 11.11.2011
Beiträge: 3
PHP-Kenntnisse:
Anfänger
swissgenealogy befindet sich auf einem aufstrebenden Ast
Standard 2. Versuch

Hallo Zusammen,

Offensichtlich muss ich hier falsch sein. Könnte der Moderator den Eintrag bitte in die Scriptbörse verschieben.

Ich habe hier noch ein paar Details:

PHP-Code:
/* Include the pData class */
include("class/pData.class.php");

/* Create the pData object */
$MyData = new pData();  

/* Connect to the MySQL database */
$db mysql_connect("localhost""dbuser""dbpwd");
mysql_select_db("pchart",$db); 
Die Datenbankverbindung ist soweit klar.

PHP-Code:
/* Build the query that will returns the data to graph */
$Requete "SELECT MONTHNAME(marrdatetr) AS Kalendermonat,  MONTH(marrdatetr) AS Monat, COUNT(*) AS Totals FROM tng_families WHERE MONTH(marrdatetr)>0 GROUP BY Monat;`";
$Result  mysql_query($Requete,$db); 
Auch Anfrage zur aktiven Datenbank habe ich vermutlich verstanden.

Aber den folgenden Teil verstehe ich gar nicht. Für einen Erklärung wäre ich mehr als dankbar !
PHP-Code:
$timestamp=""$temperature=""$humidity="";
while(
$row mysql_fetch_array($Result))
 {
  
/* Push the results of the query in an array */
  
$timestamp[]   = $row["timestamp"];
  
$temperature[] = $row["temperature"];
  
$humidity[]    = $row["humidity"];
 } 
PHP-Code:
/* Save the data in the pData array */
$myData->addPoints($timestamp,"Timestamp");
$myData->addPoints($temperature,"Temperature");
$myData->addPoints($humidity,"Humidity"); 
Logischerweise bräuchte ich zwei addPoints Funktionen: eine für den "Kalendermonat" und eine für "Totals"

Danke
Ingo
swissgenealogy ist offline   Mit Zitat antworten
Alt 13.11.2011, 01:04  
Benutzer
 
Registriert seit: 31.12.2009
Beiträge: 76
PHP-Kenntnisse:
Fortgeschritten
Auranores ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich habe keine Ahnung von pChart, aber ich kann dir gerne mal den Code den du nicht verstehst erklären:

PHP-Code:
$timestamp=""$temperature=""$humidity=""
Die Variablen werden "geleert", falls diese bereits benutzt wurden, um später Arrays anzulegen.

PHP-Code:
while($row mysql_fetch_array($Result)) 
Eine Schleife wird solange durchgelaufen, bis keine Ergebnisse mehr in der Datenbank sind.
(Alle Array Daten werden in $row gespeichert)

PHP-Code:
$timestamp[]   = $row["timestamp"]; 
  
$temperature[] = $row["temperature"]; 
  
$humidity[]    = $row["humidity"]; 
Nun wird für jede der drei hier genannten Datenbank-Spalten ein Array angelegt, und alle Werte darin gespeichert, um sie dann...

PHP-Code:
/* Save the data in the pData array */ 
$myData->addPoints($timestamp,"Timestamp"); 
$myData->addPoints($temperature,"Temperature"); 
$myData->addPoints($humidity,"Humidity"); 
dieser Methode zu übergeben.
Die Methode an sich kenne ich nicht, aber sie wird mit dem Timestamp, der Temperature und der Humidity übergeben, dazu als zweites Parameter vermutlich eine Beschreibung dazu, die dann später hinzugefügt wird.

Vielleicht konnte ich helfen
Auranores ist offline   Mit Zitat antworten
Alt 13.11.2011, 02:20  
Neuer Benutzer
 
Registriert seit: 11.11.2011
Beiträge: 3
PHP-Kenntnisse:
Anfänger
swissgenealogy befindet sich auf einem aufstrebenden Ast
Standard

Vielen Dank Auranores,

Hat mir natürlich geholfen.

Ich dachte an diesen Code:
PHP-Code:
/* Build the query that will returns the data to graph */
$Requete "SELECT MONTHNAME(marrdatetr) AS Kalendermonat, MONTH(marrdatetr) AS Monat, COUNT(*) AS Totals FROM tng_families WHERE MONTH(marrdatetr)>0 GROUP BY Monat";
$Result  mysql_query($Requete);
while(
$row mysql_fetch_array($Result))
 {
  
/* Push the results of the query in an array */
  
$Kalendermonat $row["Kalendermonat"];
  
$Totals $row["Totals"];
 }

/* Save the data in the pData array */
$myData->addPoints($Kalendermonat,"Kalendermonat");
$myData->addPoints($Totals,"Totals"); 
Leider bekomme ich diese Fehlermeldungen
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/web673/html/tng/pChart/xx.php on line 16
- line 16 ist while($row = mysql_fetch_array($Result))

Fatal error: Call to a member function addPoints() on a non-object in /var/www/web673/html/tng/pChart/xx.php on line 24
- line 24 ist $myData->addPoints($Kalendermonat,"Kalendermonat");

Ich vermute (weil ich leider zu wenig von SELECT, mysql_query und mysql_fetch_array verstehe) das Ergebnis der oben aufgeführte SELECT Funktion kann nicht in der Funktion $myData->addPoints verarbeitet werden.

Hat jemand einen Idee?
swissgenealogy ist offline   Mit Zitat antworten
Alt 13.11.2011, 02:22  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.992
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zwei Anmerkungen:

1. hast Du nicht genannt, was das Diagramm überhaupt gegeneinander abbilden soll und welcher Diagrammtyp genutzt werden soll.
2. ist es sehr fraglich, ob ein entsprechend geschriebenes Script so einfach in das verwendete G.-System eingepflegt werden kann. Das Seitenlayout scheint dadurch ja ein in sich geschlossenes System zu bilden, eine Art spezialisiertes CMS. Falls Du Dir das so vorstellst, dass das Diagramm allein über eine Query erzeugt werden kann - nein, das ist nicht möglich.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online   Mit Zitat antworten
Alt 13.11.2011, 13:15  
Benutzer
 
Registriert seit: 31.12.2009
Beiträge: 76
PHP-Kenntnisse:
Fortgeschritten
Auranores ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also diesen Code den du gepostest hast sagt dir einfach nur, dass jetzt Daten aus der MySQL Datenbank rausgeholt werden, und in einer While-Schleife verarbeitet werden.

In dem Code Kommentar steht dann: "Push the results of the query in an array"
Das ergibt für mich keinen Sinn,

da gar kein Array erstellt werden kann bei einer reinen Variablen Zuweisung.
Wie ich in meinem letzen Post schon erklärt habe zu den Arrays, wird [] benötigt , um in einer Variable-> Array, mehrere Ergebnisse zu speichern.

Der erste Fehler sagt dir einfach nur, dass direkt ein Problem an der Quelle liegt, und zwar vermute ich, dass direkt die SQL Abfrage einen Fehler enthält.
Dadurch kann nichts verarbeitet werden, und $Result enthält nichts, weswegen die While Schleife nicht verarbeitet werden kann.

Da dann einmal durch den Array Fehler und dadurch, das sie While Schleife nicht ausgeführt wird, diese Variablen leer sind, wird die Funktion sozusagen mit einem leeren Parameter aufgerufen, was zu dem zweiten Fehler führt

Geändert von Auranores (13.11.2011 um 13:43 Uhr).
Auranores ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mysql abfrage in mysql abfrage tsunder Datenbanken 8 06.09.2011 16:42
[Erledigt] MySQL Abfrage über Funktion (2 Datenbanken)? markiloy PHP Einsteiger 4 31.08.2011 23:30
[Erledigt] MySQL Abfrage mit mehreren Keywörtern inox PHP Einsteiger 16 15.02.2011 18:18
MySQL Abfrage apax PHP Tipps 2009 1 15.05.2009 23:32
MySQL Abfrage nach mehreen Spalten und mit verschiedenen Bedingungen ketchup PHP Tipps 2009 1 19.03.2009 23:21
[Erledigt] MySQL Abfrage parti02 Datenbanken 8 07.01.2009 19:19
MySQL - Fehler in einfacher Abfrage oden Datenbanken 11 03.01.2009 20:03
MySQL Abfrage von Ver. 5 für Ver 3. des MySQL Servers FireFIghter Datenbanken 3 02.02.2007 17:18
MySQL Abfrage macht Seite langsam Datenbanken 11 19.10.2006 19:38
MySQL - Abfrage: Unterschiedliche Ergebnisse aus PHP/manuell horstenpeter Datenbanken 3 16.07.2006 13:22
mysql abfrage in Schleife havok PHP Tipps 2006 6 09.05.2006 08:39
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
[Erledigt] mysql Abfrage Datenbanken 5 18.06.2004 14:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
pchart mysql, pchart php, php pchart sql werte beispiele, pchart langsam, pchart mysql beispiel, mysql data query pchart, pchart mysql query, pchart timestamp mysql, php pchart to homepage, php pchart homepage, arraydaten mit pchart, pchart sql database, pchart php 5 mysql, pchart $db = mysql_connect(\localhost\, \dbuser\, \dbpwd\); mysql_select_db(\pchart\,$db);, pchart \mysql\, \mysql_connect\ \pdata.class.php\, pchart bild speichern, pchart beispiel mysql, php pchart tutorial, pchart timestamp data

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum