Realisierung eines Online-Ticketsystems mit PB
Realisierung eines Online-Ticketsystems mit PB
Hallo,
ich bin im Bereich Webprogrammierung nicht besonders bewandert.
Nun habe ich einen "Auftrag" oder eher eine zeitlich entspannte Anfrage bekommen, ob ich ein Mini-Ticketsystem programmieren könnte, welches auf einem Webserver läuft.
Das Ticketsystem soll folgende Funktionen aufweisen:
- Onlinebasiert, damit die Nutzung von überall aus mit einem Browser funktioniert
- Einfache Webmaske zur Erfassung eines GEschäftsvorfalls mit Datums-, Uhrzeit-, Combobox- und Textfeldern
- Speicherung des Vorfalls in einer Datenbank auf dem Webserver auf dem das ganze läuft
- Speicherung von Dokumenten, die zu einem Vorfall gehören, auf dem Server (oder alternativ in einem lokalen Verzeichnis)
- Export von Vorfällen als CSV, damit diese in Excel einer Statistikanalyse unterzogen werden kann
Ich finde das Projekt spannend, auch wenn ich noch nie mit PHP, CGI und Co. zu tun hatte. Zwar kann ich auf einem Webserver eine Datenbank einrichten und auch mit SQL und ein bisschen HTML umgehen, aber ich habe noch keine Onlineanwendungen programmiert und kenne auch das Zusammenspiel der verschiedenen Komponenten/Schnittstellen nicht.
Meine Frage ist, ob man so etwas realistisch angehen kann, auch wenn man kein Webentwickler ist. Meine Erfahrungen beschränken sich auf die Entwicklungen von Desktopanwendungen unter Windows mit ein bisschen HTML- und ausreichenden SQL-Kenntnissen.
Möglicherweise kann man Teile des Projekts ja auch mit Spiderbasic realisieren (wenn Spider denn mal auf meinem Win XP laufen würde, aber das ist eine andere Geschichte).
Mir sind die gesamten Zusammenhänge bei so einem Projekt noch nicht ganz klar, so dass ich den Aufwand und die Menge des neu zu lernenden Stoffes nicht abschätzen kann.
PureBasic hat ja die CGI Lib. Kann man damit dynamische Webseiten erstellen, so dass das System quasi lediglich aus der Datenbank und einer PureBasic Exe besteht, die auf dem Server läuft? Wie ist das überhaupt, wenn man eine Serveranwendung mit PB erstellt... bekomme ich heraus auf welchen Servern meine Exe überhaupt laufen wird? Für mich ist das alles noch blanke Theorie.
Es wäre super, wenn ich mich dazu mal mit einem Web-erfahrenen Programmierer kurzschließen könnte.
Gruß Kurzer
ich bin im Bereich Webprogrammierung nicht besonders bewandert.
Nun habe ich einen "Auftrag" oder eher eine zeitlich entspannte Anfrage bekommen, ob ich ein Mini-Ticketsystem programmieren könnte, welches auf einem Webserver läuft.
Das Ticketsystem soll folgende Funktionen aufweisen:
- Onlinebasiert, damit die Nutzung von überall aus mit einem Browser funktioniert
- Einfache Webmaske zur Erfassung eines GEschäftsvorfalls mit Datums-, Uhrzeit-, Combobox- und Textfeldern
- Speicherung des Vorfalls in einer Datenbank auf dem Webserver auf dem das ganze läuft
- Speicherung von Dokumenten, die zu einem Vorfall gehören, auf dem Server (oder alternativ in einem lokalen Verzeichnis)
- Export von Vorfällen als CSV, damit diese in Excel einer Statistikanalyse unterzogen werden kann
Ich finde das Projekt spannend, auch wenn ich noch nie mit PHP, CGI und Co. zu tun hatte. Zwar kann ich auf einem Webserver eine Datenbank einrichten und auch mit SQL und ein bisschen HTML umgehen, aber ich habe noch keine Onlineanwendungen programmiert und kenne auch das Zusammenspiel der verschiedenen Komponenten/Schnittstellen nicht.
Meine Frage ist, ob man so etwas realistisch angehen kann, auch wenn man kein Webentwickler ist. Meine Erfahrungen beschränken sich auf die Entwicklungen von Desktopanwendungen unter Windows mit ein bisschen HTML- und ausreichenden SQL-Kenntnissen.
Möglicherweise kann man Teile des Projekts ja auch mit Spiderbasic realisieren (wenn Spider denn mal auf meinem Win XP laufen würde, aber das ist eine andere Geschichte).
Mir sind die gesamten Zusammenhänge bei so einem Projekt noch nicht ganz klar, so dass ich den Aufwand und die Menge des neu zu lernenden Stoffes nicht abschätzen kann.
PureBasic hat ja die CGI Lib. Kann man damit dynamische Webseiten erstellen, so dass das System quasi lediglich aus der Datenbank und einer PureBasic Exe besteht, die auf dem Server läuft? Wie ist das überhaupt, wenn man eine Serveranwendung mit PB erstellt... bekomme ich heraus auf welchen Servern meine Exe überhaupt laufen wird? Für mich ist das alles noch blanke Theorie.
Es wäre super, wenn ich mich dazu mal mit einem Web-erfahrenen Programmierer kurzschließen könnte.
Gruß Kurzer
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2024: 56 Jahre.
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2024: 56 Jahre.
- man-in-black
- Beiträge: 362
- Registriert: 21.08.2006 17:39
Re: Realisierung eines Online-Ticketsystems mit PB
Hi,
sowas kann man eigentlich recht einfach mit PHP realisieren.
(Andere Sprachen sind vielleicht "sicherer" etc, aber ich hab bisher nur mit PHP gewerkelt)
Sofern PHP vom Webserver unterstützt wird, ist der Aufwand eigentlich überschaubar.
Entweder du baust dir mit PHP die HTML Seite auf oder verlinkst dein Formular mit einer PHP-Datei.
Das Skript besteht dann einfach nur aus GET/POST/..., die dir die Formulareinträge holen
und der SQL Datenbankabfrage. Im Internet gibt es genug Codebeispiele.
MFG
MIB
sowas kann man eigentlich recht einfach mit PHP realisieren.
(Andere Sprachen sind vielleicht "sicherer" etc, aber ich hab bisher nur mit PHP gewerkelt)
Sofern PHP vom Webserver unterstützt wird, ist der Aufwand eigentlich überschaubar.
Entweder du baust dir mit PHP die HTML Seite auf oder verlinkst dein Formular mit einer PHP-Datei.
Das Skript besteht dann einfach nur aus GET/POST/..., die dir die Formulareinträge holen
und der SQL Datenbankabfrage. Im Internet gibt es genug Codebeispiele.
MFG
MIB
Re: Realisierung eines Online-Ticketsystems mit PB
ja, schade, dass es bei Dir nicht laufen will. Denn meines Erachtens wäre SB eine gute Lösung, mit der Du ohne HTML-, CSS- und JavaScript-Kenntnisse die Client-Seite (im Browser) abdecken könntest.Kurzer hat geschrieben:Möglicherweise kann man Teile des Projekts ja auch mit Spiderbasic realisieren (wenn Spider denn mal auf meinem Win XP laufen würde, aber das ist eine andere Geschichte).
Und wer weiß: Vielleicht kommt eines Tage auch die nahtlose Integration von PB, um die Server-Seite programmieren zu können...
Grüße ... Peter
a²+b²=mc²
Re: Realisierung eines Online-Ticketsystems mit PB
Schönes Projekt - und ganz klarer Fall für Pb2Web! 
Sowas habe ich damit schon oft realisiert, allerdings immer mit SQLite und
CGI auf einem Windows Server.
Ciao Dige

Sowas habe ich damit schon oft realisiert, allerdings immer mit SQLite und
CGI auf einem Windows Server.
Ciao Dige
"Papa, ich laufe schneller - dann ist es nicht so weit."
Re: Realisierung eines Online-Ticketsystems mit PB
Warum nutzt ihr denn nicht was vorhandenes?
Gut, wenn du die Herausforderung liebst, spricht nichts dagegen, aber meine Erfahrung sagt mir, dass "zeitlich entspannte" Aufträge nach einer gewissen Zeit dann doch drücken.
Für PB müsst ihr auch einen eigenen Server bereitstellen. Bei Webserver denk ich eher an die mietbaren Server auf denen PHP läuft. Da kannst du natürlich kein PB-Programm laufen lassen.
Gut, wenn du die Herausforderung liebst, spricht nichts dagegen, aber meine Erfahrung sagt mir, dass "zeitlich entspannte" Aufträge nach einer gewissen Zeit dann doch drücken.
Für PB müsst ihr auch einen eigenen Server bereitstellen. Bei Webserver denk ich eher an die mietbaren Server auf denen PHP läuft. Da kannst du natürlich kein PB-Programm laufen lassen.
Signatur und so
-
- Beiträge: 55
- Registriert: 01.03.2015 12:05
- Wohnort: Saarland / Püttlingen
- Kontaktdaten:
Re: Realisierung eines Online-Ticketsystems mit PB
Hallo,
wie Derren schon sagte, nutze doch etwas vorhandenes, wenn du im Inet suchst, findest du genügt PHP-Scripte, die den Anforderungen entsprechen, die du brauchst, diese musst du nur installieren, fertig. Niemand will freiwillig das Rad neu erfinden, ausser du bestehst unbedingt auf PB.
mfg
wie Derren schon sagte, nutze doch etwas vorhandenes, wenn du im Inet suchst, findest du genügt PHP-Scripte, die den Anforderungen entsprechen, die du brauchst, diese musst du nur installieren, fertig. Niemand will freiwillig das Rad neu erfinden, ausser du bestehst unbedingt auf PB.
mfg
Re: Realisierung eines Online-Ticketsystems mit PB
Moin,
jupp, danke für eure Hinweise.
Mittlerweile habe ich mir einen lokalen Webserver installiert (auch wegen der Problematik, dass SpiderBasic-Programme bei mir nicht aus der IDE heraus laufen (F5)).
Ich werde mir die nächste Zeit auf Arbeit mal PHP ansehen (sofern Cheffe mir dafür Zeit lässt), die Syntax scheint ja nicht so kompliziert zu sein (oder ich habe noch nicht den gesamten Sprachumfang überflogen
). Das für mich schwierigste wird sein, zu verstehen wie das Zusammenspiel mit HTML und der gesamten Infrastruktur von Server und Client funktioniert. Mit fehlt diesbezüglich natürlich die Erfahrung, um beurteilen zu können wie man welches Problem am besten angeht und was es in puncto Sicherheit zu beachten gilt. Es soll ja niemand von außen Zugriff auf die Daten des Ticketsystems bekommen oder meine Scripte hacken.
Ich denke auch, dass ich mir das Frontend mit einem Webdesigner-Programm erstellen werde und die Funktionalität dann mittels PHP programmiere. Soweit ich das bei SpiderBasic gesehen habe, gibt es dort ja faktisch nur mittels HTTPRequest() die Möglichkeit mit einem serverseitigen Script zu kommunizieren - wobei ich mir das jetzt auch nur laienhaft aus den Beispielen der SB-Hilfe zusammengereimt habe.
@Derren: Danke für die Info, dass PB nicht auf einem gemieteten Webserver laufen wird. Das war mir auch nicht so ganz klar. Ich frage mich aber, wie man dann die CGI Lib in PB nutzt.
Nachtrag: Ich habe das ganze jetzt mal auf dem lokalen Webserver probiert.
- Im Dokumentenverzeichnis habe ich das Verzeichnis "perl" angelegt und dort eine Datei namens "perl.cgi" angelegt
Perl.cgi:
- Im cgi-bin Verzeichnis das mit PB compilierte CGI Beispiel hinterlegt "test.exe"
test.pb:
Das ganze funktioniert. Wenn ich im Browser "http://localhost/perl/perl.cgi" eingebe, dann wird die Exe ausgeführt und mir der Output im Browser angezeigt.
Dann habe ich das mal auf meinem Webspace versucht. Klappt dort nicht (ich habe den Pfad zum "cgi-bin" entsprechend angepasst). Dort wird mir dann bei Aufruf der perl.cgi Datei lediglich der Inhalt der cgi Datei im Browser angezeigt:
Okay, es kann schon allein aus dem Grund nicht funktionieren, weil die test.exe eine 32 Bit Windows exe ist und der Server im Web auf einem 64 Bit Linux System läuft (sagt mir jedenfalls phpinfo() )
Angenommen die test.exe würde als 64 Bit Linux Programm kompiliert, sollte das ganze dann funktionieren?
Noch eine Frage: Gibt es empfehlenswerte PHP IDEs oder Entwicklungsumgebungen mit Autovervolständigung und eingebauter Hilfe oder coded man das einfach in einem Texteditor?
Gruß Kurzer
jupp, danke für eure Hinweise.
Mittlerweile habe ich mir einen lokalen Webserver installiert (auch wegen der Problematik, dass SpiderBasic-Programme bei mir nicht aus der IDE heraus laufen (F5)).
Ich werde mir die nächste Zeit auf Arbeit mal PHP ansehen (sofern Cheffe mir dafür Zeit lässt), die Syntax scheint ja nicht so kompliziert zu sein (oder ich habe noch nicht den gesamten Sprachumfang überflogen

Ich denke auch, dass ich mir das Frontend mit einem Webdesigner-Programm erstellen werde und die Funktionalität dann mittels PHP programmiere. Soweit ich das bei SpiderBasic gesehen habe, gibt es dort ja faktisch nur mittels HTTPRequest() die Möglichkeit mit einem serverseitigen Script zu kommunizieren - wobei ich mir das jetzt auch nur laienhaft aus den Beispielen der SB-Hilfe zusammengereimt habe.
@Derren: Danke für die Info, dass PB nicht auf einem gemieteten Webserver laufen wird. Das war mir auch nicht so ganz klar. Ich frage mich aber, wie man dann die CGI Lib in PB nutzt.
Nachtrag: Ich habe das ganze jetzt mal auf dem lokalen Webserver probiert.
- Im Dokumentenverzeichnis habe ich das Verzeichnis "perl" angelegt und dort eine Datei namens "perl.cgi" angelegt
Perl.cgi:
Code: Alles auswählen
#!"cgi-bin/test.exe"
test.pb:
Code: Alles auswählen
;
; ------------------------------------------------------------
;
; PureBasic - CGI example file
;
; (c) Fantaisie Software
;
; ------------------------------------------------------------
;
; To test it, you will need to compile it as an standalone executable and put it in the /cgi-bin/ folder of your
; webserver.
;
If Not InitCGI() Or Not ReadCGI()
End
EndIf
WriteCGIHeader(#PB_CGI_HeaderContentType, "text/html", #PB_CGI_LastHeader) ; Write the headers to inform the browser of the content format
WriteCGIString("<html><title>PureBasic CGI</title><body>")
Procedure WriteCGIConstant(Constant$)
WriteCGIString(Constant$ + ": " + CGIVariable(Constant$)+"<br>")
EndProcedure
WriteCGIConstant(#PB_CGI_AuthType)
WriteCGIConstant(#PB_CGI_ContentLength)
WriteCGIConstant(#PB_CGI_HeaderContentType)
WriteCGIConstant(#PB_CGI_DocumentRoot)
WriteCGIConstant(#PB_CGI_GatewayInterface)
WriteCGIConstant(#PB_CGI_PathInfo)
WriteCGIConstant(#PB_CGI_PathTranslated)
WriteCGIConstant(#PB_CGI_QueryString)
WriteCGIConstant(#PB_CGI_RemoteAddr)
WriteCGIConstant(#PB_CGI_RemoteHost)
WriteCGIConstant(#PB_CGI_RemoteIdent)
WriteCGIConstant(#PB_CGI_RemotePort)
WriteCGIConstant(#PB_CGI_RemoteUser)
WriteCGIConstant(#PB_CGI_RequestURI)
WriteCGIConstant(#PB_CGI_RequestMethod)
WriteCGIConstant(#PB_CGI_ScriptName)
WriteCGIConstant(#PB_CGI_ScriptFilename)
WriteCGIConstant(#PB_CGI_ServerAdmin)
WriteCGIConstant(#PB_CGI_ServerName)
WriteCGIConstant(#PB_CGI_ServerPort)
WriteCGIConstant(#PB_CGI_ServerProtocol)
WriteCGIConstant(#PB_CGI_ServerSignature)
WriteCGIConstant(#PB_CGI_ServerSoftware)
WriteCGIConstant(#PB_CGI_HttpAccept)
WriteCGIConstant(#PB_CGI_HttpAcceptEncoding)
WriteCGIConstant(#PB_CGI_HttpAcceptLanguage)
WriteCGIConstant(#PB_CGI_HttpCookie)
WriteCGIConstant(#PB_CGI_HttpForwarded)
WriteCGIConstant(#PB_CGI_HttpHost)
WriteCGIConstant(#PB_CGI_HttpPragma)
WriteCGIConstant(#PB_CGI_HttpReferer)
WriteCGIConstant(#PB_CGI_HttpUserAgent)
WriteCGIString("</body></html>")
Code: Alles auswählen
AUTH_TYPE:
CONTENT_LENGTH:
Content-type:
DOCUMENT_ROOT: C:/PortableApps/XAMPP-Portable/htdocs
GATEWAY_INTERFACE: CGI/1.1
PATH_INFO:
PATH_TRANSLATED:
usw...
Code: Alles auswählen
#!"{DOCROOT}/cgi-bin/test.exe"
Angenommen die test.exe würde als 64 Bit Linux Programm kompiliert, sollte das ganze dann funktionieren?
Noch eine Frage: Gibt es empfehlenswerte PHP IDEs oder Entwicklungsumgebungen mit Autovervolständigung und eingebauter Hilfe oder coded man das einfach in einem Texteditor?
Gruß Kurzer
"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2024: 56 Jahre.
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2024: 56 Jahre.
- man-in-black
- Beiträge: 362
- Registriert: 21.08.2006 17:39
Re: Realisierung eines Online-Ticketsystems mit PB
Hi,
es gibt sicherlich spezielle PHP Editoren, aber ich nehm dafür immer PSPad (primär HTML Editor).
FTP, Comilerschnittstelle, Projektverwaltung, Code-Explorer (Methoden, Funktionen, Variablen),...
Schade finde ich aber, dass er keine Funktionen faltet (wie in der PB IDE).
edit: bullshit korrigiert^^
MFG
MIB
es gibt sicherlich spezielle PHP Editoren, aber ich nehm dafür immer PSPad (primär HTML Editor).
FTP, Comilerschnittstelle, Projektverwaltung, Code-Explorer (Methoden, Funktionen, Variablen),...
Schade finde ich aber, dass er keine Funktionen faltet (wie in der PB IDE).
edit: bullshit korrigiert^^
MFG
MIB
Re: Realisierung eines Online-Ticketsystems mit PB
CGI wird oft auch nicht erlaubt. Und wenn dann oft nur Perl oder Ruby oder so. Keine Exe'n (oder Linux-Versionen, die meisten Webserver laufen ja unter Linux).
Hab mir die CGI-Lib noch nicht angesehen. Wenn CGI aktiviert ist (kannst du ja selber mal testen mit XAMPP auf deinem Rechner) kannst du solche Sachen machen: deinserver.tld/cgi/meinprogramm.exe?parameter=hallo Dafür braucht es imho keine spezielle Lib, aber wie gesagt hab ich mich nicht damit befasst. Vielleicht macht sie Sachen einfacher.
Hab mir grade dein Beispiel angesehen. Sie scheint zumindest die Ausgabe von HTML-Code an den Browser zu vereinfachen. Das ist doch schon mal was
Als Editor ist Notepad++ für den Anfang ziemlich gut und man kann vieles über Plugins nachrüsten. Die neueste Version hat auf jeden Fall Autoversvollsändigung drin. Wenn noch Fragen zur Benutzung einer Funktion auftreten einfach Alt+F1 drücken und es wird die entsprechende PHP-Hilfeseite im Browser aufgerufen.
Hab mir die CGI-Lib noch nicht angesehen. Wenn CGI aktiviert ist (kannst du ja selber mal testen mit XAMPP auf deinem Rechner) kannst du solche Sachen machen: deinserver.tld/cgi/meinprogramm.exe?parameter=hallo Dafür braucht es imho keine spezielle Lib, aber wie gesagt hab ich mich nicht damit befasst. Vielleicht macht sie Sachen einfacher.
Hab mir grade dein Beispiel angesehen. Sie scheint zumindest die Ausgabe von HTML-Code an den Browser zu vereinfachen. Das ist doch schon mal was

Als Editor ist Notepad++ für den Anfang ziemlich gut und man kann vieles über Plugins nachrüsten. Die neueste Version hat auf jeden Fall Autoversvollsändigung drin. Wenn noch Fragen zur Benutzung einer Funktion auftreten einfach Alt+F1 drücken und es wird die entsprechende PHP-Hilfeseite im Browser aufgerufen.
Signatur und so
Re: Realisierung eines Online-Ticketsystems mit PB
Hallo ihr beiden,
danke für die Tipps. Ich habe mir beide Editoren angesehen (und ein paar andere) und werde Notepad++ nutzen, weil ich damit vom Funktionsumfang und visuell am besten zurechtkomme.
danke für die Tipps. Ich habe mir beide Editoren angesehen (und ein paar andere) und werde Notepad++ nutzen, weil ich damit vom Funktionsumfang und visuell am besten zurechtkomme.

"Never run a changing system!" | "Unterhalten sich zwei Alleinunterhalter... Paradox, oder?"
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2024: 56 Jahre.
PB 6.02 x64, OS: Win 7 Pro x64 & Win 11 x64, Desktopscaling: 125%, CPU: I7 6500, RAM: 16 GB, GPU: Intel Graphics HD 520
Useralter in 2024: 56 Jahre.