HX3 Foren

HX3 Foren (https://hx3.de/)
-   Software- und Webentwicklung (https://hx3.de/software-webentwicklung-23/)
-   -   Kleines Community Projekt (https://hx3.de/software-webentwicklung-23/kleines-community-projekt-8824/)

Atomic 01.08.2004 19:37

Wie wäre es wenn wir eine Kleinigkeit programmieren, gemeinsam und nur zum Spaß. Mal sehen ob wir das als ein Team hinbekommen.

Jeder würde eine bestimmte Komponente übernehmen und am Schluss muss dann alles zusammen reibungslos laufen.
Der Code gehört dann selbstverständlich uns allen und jeder darf ihn für seine eigene Website verwenden.

Das Problem ist nur: Was programmieren?

Hier mal ein paar spontane Vorschläge:
  • Ein Online Winzip Tool
  • Eine Betriebsystem-unabhängige Suche (wie die Windows Suche) in Form einer PHP-GTK Anwendung
  • Eine kleine Suchmaschine die Links verfolgen kann, Daten in einer MySQL Tabelle speichert, Die MySQL Volltextsuche verwendet, ein einfaches Webfrontend wie auf google.de bietet wo man nach begriffen suchen kann
  • Eine kleine Webanwendung die Website Statistiken erfasst und analysiert
  • Eine API um den Amazon Webservice nutzen zu können
  • Ein Webgame (fragt sich nur was für eines)
  • Ein Tool um GrettingCards zu bedrucken und versenden
Wer hat ne bessere Idee?
Wer würde mitmachen?

DigitalFreak 02.08.2004 12:09

Hi,

also ich würde mitmachen....

ich find statistiken cool, also mein vroschlag:
lass ne statistik programmieren ...

Atomic 02.08.2004 14:54

Freut mich :)
Wir warten aber besser noch ein wenig ab auf das sich noch mehr Coder melden mögen.

Garry 02.08.2004 19:37

Nette Idee, aber ich habe in letzter Zeit zu wenig Zeit für sowas. Hänge total nach.. Aber das mit der Suchmaschine habe ich auch schon mal selber gelöst. Ist ganz spaßig :) .

Atomic 02.08.2004 20:05

Zitat:

Originally posted by Garry@Aug 2 2004, 06:37 PM
Nette Idee, aber ich habe in letzter Zeit zu wenig Zeit für sowas. Hänge total nach.. Aber das mit der Suchmaschine habe ich auch schon mal selber gelöst. Ist ganz spaßig :) .
Gratulation zum 1000'sten Post :cool:

Garry 02.08.2004 20:20

Wow, sehe ich jetzt auch :) .

Danke :cool: !

Atomic 03.08.2004 23:57

Ich find Statistiken langweilig, aber OFPC und SWBF könnten sowas gut gebrauchen :)

Nun dann beginnen wir doch gleich mal mit der Brainstorming Fase..

Was man auswerten könnte

Page Impressions (Seitenaufrufe)
Page Visits (Seitenbesuche)

Verhältniss Page Impressions zu Page Visits (Seiten pro Besucher)

Trend Page Impressions (Gehts aufwärts oder abwärts mit der Beliebtheit?)
Trend Page Visists (Gehts aufwärts oder abwärts mit den Besuchszahlen/Bekanntheit)

Das ganze dann nochmal unterteilt auf bestimmte Bereiche einer Website.


Mögliche Umsetzung

Die umständliche Methode ist die Logfiles auszulesen.
Die einfachere ist jeden Aufruf in einer Tabelle zu protokollieren.
Hierbei ist das Problem wie man den wiederkehrenden Besucher (der wo am Tag mehrmals die Webseite besucht) erkennt.
Sowohl die Cookie Methode als auch die IP Methode sind gleichermaßen ernüchternd.

Datum || Fortlaufende ID zur Besucher Identifikation wo in einem Cookie 24h gespeichert wird / IP-Adresse || Bereich

Die große Frage wie analysiert man den Trend?
Am einfachsten wohl in dem man den letzten (=vollständigen) Tag mit dem gleichen Tag vor einem Monat abgleicht.
Aber äußerst genau ist das nicht.


Mögliche Aufgaben

Funktion um Seitenaufruf zu protokollieren und event. Cookie anlegen/auslesen

Funktion um alle Seitenaufrufe eines Tages zu laden (optionale Angabe: der Bereich)

Funktion die aus diesen heruntergeladenen Dateien Visits macht

Funktion die die Seitenaufrufe pro Visit errechnet und Formatiert (die Zahl rundet)

Funktion die uralte Daten herunterläd, zipt, per E-Mail versendet, und anschliesend aus der Tabelle löscht (Damit die Tabelle nicht irgendwann die komplette Website ausbremst)

(...)

Deine Meinung?

DigitalFreak 04.08.2004 19:50

hi,

statistik: können auch was anderes machen ...



also viel mehr fällt mir auch nicht ein ...

1)
das mit cookies und ips ist wirklich ein problem:
sind cookies ausgeschaltet, wirkt nur noch die ip methode, die dämlich ist ... (leicht zu manipulieren)
wenn cookies aktiv sind, dann funktioniert das ganze prima

2)
den trend zu errechnen ist wirklich schwierig ...
man könnte es so machen, aber wie du schon gesagt hast, ist dies wirklich sehr ungenau ...
ich überleg mir mal was .. vielleicht fällt mir noch etwas ein

Atomic 04.08.2004 22:55

Also bevor wir hier doch nichts wird legen wir lieber los..

Zuerst ein paar formelle Dinge (wenn du Einsprüche hast - bitte keine Hemmungen)
  • Tabulator-Einschub: 4 Leerzeichen
  • Namen öffentlicher Funktionen und Klassen: Keine "_" dafür Groß- & Kleinschreibung
  • Namen Privater Methoden: Klein und mit "_"-Trennung
  • Alle Eigenschaften (Klassenvariabeln): klein und mit "_"-Trennung
  • PHP-Version: 5 :)
  • Datenbank-Server: Egal, hauptsache er versteht einfache Querys
  • Kommentare im Quellcode: Hmm.. mir persönlich nicht wichtig.
Und fehlt ein Name

Ein kurzes Prefix vor allen Funktionsnamen ist ganz gut um zu verhindern das man Funktionanamen (unabsichtlich) in einer großen Anwendung doppelt verwendet.

"HCP_" für HX3 Communty Projekt?


Vorarbeit

Ich finds wichtig wenn wir eine Funktion "Query" haben deren Inhalt jeder Selbst definieren kann.
Des weiteren brauchen wir auch ein festgelegtes Format um mit dem was vom Datenbank Server kommt arbeiten zu können.
Am einfachsten ist da ein Array mit den einzelnen Zeilen als Index:
Array[0] = Zeile 1
Und jedes Feld einer Zeile als assoziatives Array ..also:
Array[2]["content"] = Zeile 2 Spalte content

Des weiteren brauchen wir ein einheitliches Error-Handling, welches aber jeder von uns ebenfalls nach den eigenen Bedürfnissen anpassen kann.

Ich empfehle die Exception-Technik von PHP5
Sobald in einer try-Schleife eine Exception geworfen wird springt PHP automatisch zum Catch-Block.
Alle möglichen Fehler haben eine ID. Da wir Menschen aber mit ID's nicht viel anfangen können definieren wir für jede ID eine Konstante.
Wie der Fehler ausgewertet wird kann jeder in seiner eigenen Exception-Klasse entscheiden.

Wie gehts weiter?

DigitalFreak 06.08.2004 17:39

öhm

php5? hab ich gar nicht und noch nie mit gearbeitet :p

bezeichnung von variablen: mach das immer so:
$iNum
$sText
$aRow
...

i = integer
s = string
a = array

funktionen:
getBla

objekte:
$cfg = new CConfig() => alle objekte klein

klassen:
CConfig
CMySQL
...

Daedalus 06.08.2004 18:40

:confused:
Macht was feines fürs OFPC!

Atomic 06.08.2004 18:41

naja ich schreib bei variabeln, wenn mir wichtig ist das ich weiß welchem typ sie angehören

variabel_arr = array
variabel_str = string
...
aber oftmals mach ich das nicht weil die variabel nahmen recht eindeutig sind

zum z.B.:

function filter_etwas($str)

das ist $str dann selbstverständlich ein string

ich denke in dieser sache (was die typisierung betrifft) so ist deine Ordnung besser

also:

Code:

$iNum
$sText
$aRow
...

i = integer
s = string
a = array

===

dann will ich mal ein mix aus meinem und deinem stil versuchen


Code:

//PR = hier die Projekt Abkürzung

define("PR_ERROR_KONSTANTE",1);
$aDaten = array();
class PR_XMLDocumentReader{
 ** **private $aData;
 ** **function __construct(){
 ** ** ** **//php 5 constructor
 ** ** ** **$this->aData = array(); //erst im constructor werden variabeln startwerte zugewiesen (so soll mans zumindest machen)
 ** **}
 ** **function __destruct(){
 ** ** ** **//php5 destructor
 ** **}
 ** **public function ReadString($sPath){} // öffentliche funktion
 ** **private function ParseTag(&$oXML){} // 1 privat, 2. von Object oXML wird nur eine Referenz übergeben
 ** **static public function GetVersion(){
 ** ** ** ** //Statische Funktionen können ohen Objekt aufgerufen werden: PR_XMLDocumentReader::GetVersion
 ** ** ** ** return "1.0.0"; //versions-angaben im Format "Major.Minor.Patch"
 ** **}
}
function PR_Init(){} // normale öffentliche funktion, auch hier mit vorangestellter Projektkennung
function __PR_InitXY(){} // private funktion auserhalb einer klasse erkennbar durch vorangestelltes "__"

http://www.php.net/downloads.php
http://www.zend.com/php5/articles/en...p5-changes.php
http://www.zend.com/php5/zend-engine2.php
http://www.waterproof.fr/ (Um eine Lizens zu bekommen (keine 30-Tage Trail) musst du lediglich in einem kurzen Text reinschreiben das du es für keine kommerziellen Zwecke verwendest. Um eine Lizens anfordern zu können musst du dir einen Account anlegen.)

Es gibt aber ein Problem:
Bin die nächsten paar Tage nicht erreichbar :(

DigitalFreak 06.08.2004 21:03

ja,
wenn wir php 5 nehmen, hab ich aber keine nutzen von.
mein webspace läuft mit php 4 und die meiner kunden auch.
upgraden is erstmal nicht drin :)

und das läuft dann ja nicht auf php 4...

ich mein es ist vielleicht ganz gut, mal erfahrungen zu sammeln, aber dann sollte man das auch verwenden können :p

Atomic 16.08.2004 21:13

Ich hab gehört das eine Menge Hoster auf PHP5 bereits umgestiegen haben und alle meine älteren Scripte laufen in PHP5 reibungslos.
Hinzu kommt das man in PHP5 noch einen speziellen PHP4 kompatibilitäts-Modus laufen lassen kann (Einstellung in der PHP.ini) um PHP4 typische Verhaltensweisen zu simulieren.
Einem Umstieg steht also nichts im Wege.

Wichtig ist mir in erster Linie das PHP5 Exception-Handling.

DigitalFreak 27.08.2004 22:27

Hallo,

läuft noch was?
Hab im Moment kaum Zeit für irgendwas ^^.
Grund: Schule.

Aber vieleicht find ich in der Woche doch mal 1-2h um an dem Projekt zu arbeiten...

Hast du mal ein paar Links?
Neues in PHP + Anwendung (wie dein angesprochenes Exeption-Handling)...

Hatte da mal einen Link von ner negl. Seite ... hab jetzt aber vergessen.

Atomic 30.08.2004 20:23

Hier der Info Bereich der Schöpfer des neuen PHP Kerns:

http://www.zend.com/php5/

Und hier auch so gleich zum neuen Error-Handling:

http://www.zend.com/php5/articles/php5-exceptions.php

DigitalFreak 02.09.2004 08:42

fein ... ich schau mir das mal an!

Atomic 03.09.2004 00:07

Und hier die Geschichte von PHP bis zur Version 5:

http://www.devshed.com/c/a/PHP/An-Introduction-to-PHP/

DigitalFreak 09.10.2004 18:29

AW: Kleines Community Projekt
 
Hi,

Boah ... ich hab soviel um die Ohren, dass das wohl nix wird ...
Tur mir Leid!


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:47 Uhr.

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias


SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119