Zum Inhalt springen

4ipok

Mitglieder
  • Gesamte Inhalte

    44
  • Benutzer seit

  • Letzter Besuch

Beiträge von 4ipok

  1. *Update*

    Ja der Post ist Alt....

    Aber es ist es wert Mein aktuellen beruflichen Stand zu anzugeben um zu zeigen das Jeder eine Chance hat.

    Meine Ausbildung als FIAE musste ich wegen Geldmangel abbrechen aber trotzdem bin jetzt bei einer Werbeagentur angestellt als Back-end Programmierer. Und das ohne English Kenntnisse oder einer abgeschlossene Ausbildung.

    Also wer das Interesse und den Willen hat, hat nicht nur Chance sondern auch Zukunft!

    lg Iwan

  2. Wenn du wenigstens ein Windows-Server Betriebssystem einsetzen würdest. Dann hättest du auch nicht das Problem mit einer geeigneten Verwaltungsoberfläche.

    Aber wenn du nur Standalone-Programme auf einem Windows XP installierst, musst du diese halt über ihre eigenen Konfigurationsdateien/-oberflächen administrieren.

    Von der OS hängts bei mir nicht ab, es muss nur Windows sein...

    Es ist nur meine Unwissenheit was welches OS mitsich bringt und wie weit ich es erweitern kann. Als auch welche Soft geeignet ist. Deswegen such ich ja Leute die ihre Erfahrung mit mir teilen könten :D

    vg

    Iwan

  3. Wenn du Linux bedinen und dann administrieren von Server wils. Würde ich dir für anfang Suse bzw. Ubuntu/Kubuntu(Debian) empfehle wegen Desktop Oberfläche. Da diese recht weit verbreitet sind. Und es gibt viele Tutorials als auch Foren für Hilfe.

    Wenn du die Consolensprache und das System recht gut kennst, empfehle ich dann reines Debian als OS für Server zu nehmen.

    Und um den Test/-Lernprozess zu erleichtern würd ich erstmal auf eine Virtuelle Maschine ausüben wie VBox von Sun oder VirtualPC von Microsoft.

    Auf jeden Fall hatt mir Googel da recht gut geholfen ^^

    mfg

    Iwan

  4. Mir scheint, dass Du bisher wenig über Server und Serveradministration weiß, darum würde ich Dir raten, von dem Projekt abzusehen, denn ein eigener Server ist kein Spielzeug.

    Der Schein trügt, ich habe schon edliche Server Konfiguriert bzw. ich 1 Rootserver schon miete! Leider waren es bis jetzt immer Debian als OS und Confixx als Administrations Soft. Die werden auch nur für Webhosting eingesetzt.

    Ein 19" Rack macht noch keinen eignen Server und ich denke Du wirst auch keinen Anbieter finden, der mal eben einfach so Deinen Server in sein Rechenzentrum schraubt !?
    Solche Anbieter gibt es genug die nur Stellplatz, Klima, Strom und Inet mit IP anbieten. Muss man eben selbst immer vorbeischauen um sein Schrank Hinstellen/Warten

    Benutz' den Server um wirklich zu lernen, wie man ein Server OS administriert und wie man es sicher konfiguriert

    Genau das ist auch mein Ziel!!!! Mehr Erfahrung zu sammeln mit unterschiedlichen OS und deren Einsatz.

    Wieso willst du Windows XP auf einem "Server" einsetzen?

    Wieso willst du überhaupt noch FTP einsetzten?

    Ein FTP für andere Benutzer! Ich Selbst verwende SSH bei Linux, bei Windows gibt’s bestimmt auch Ähnliches.

    Ich verwende XP weil ich dafür schon etliche Programme entwickelt habe und mich damit sehr gut auskenne.

    ...

    für den anfang vielleicht ein win 2008 server als testversion und dann mal mit linux anfangen

    ....

    Ich bin in besitze von XP bis 7 und allen Server OS von Microsoft. Mit Linux wie gesagt hatte ich schon das Vergnügen. Und man soll sich ja weiterentwickeln ^^

    Also... ich suche ein Administrationsprogramm oder Ähnliches für PHP, MySQL und FTP sowas wie Confixx nur eben für Windows. Und ein VPN DAEMON mit Passenden Clients die auf allen Win OS und unter Linux gut laufen.

    Es müssen keine Freeware sein, ich kans mir leisten gute sachen auch zu kaufen xD

    vg

    Iwan

  5. hi,

    Ich hab ein Servermodul ergattert und möcht daraus ein Testobjekt für all möglichen Dinge machen ^^. Also bis ich ein Schrank dafür besorge und den in RZ hinstelle, will ich folgendes schon draufhaben

    - PHP

    - MySQL

    - FTP

    - VPN + TeamSpeak3 ( für zocken mit Freunden xD )

    - und par Gameserver wie CS:S und so...

    !Das Ganze auf Windows wegen einigen Gemes

    Erstmals lass ich den zuhause laufen über DynDNS, hatte ich ja auch schon mal mit CSS Server mit einem normalen PC geklappt.

    meine Frage: was empfehlt ihr für Programme bzw. Tools um MySQL, FTP und VPN zu betreiben und möglichst Accounts automatisch via PHP zu generieren?

    Aktuell:

    WinXP SP3

    PHP/MySQL mit Wampserver

    FTP mit Filezilla Server

    VPN mit OpenVPN (leider extreme Probleme beim Clients unter Vista)

    CSS, TS3(über MySQL) und DynDNS sind auch schon fertig ^^

    vielen Dank schon mal voraus ^^

  6. Hallo Forum ^^

    kennt Jemand eine Möglichkeit alle Fehler abzufangen die im Skript aufträten, welches durch include oder include_once eingebunden wurden?

    <?php
    /* CODE */
    try
    {
    /* sonstige überprüfung */
    include ( 'error.php' );
    }
    catch ( Exception $e )
    {
    /* Fehlerverarbeitung */
    var_dump( $e->getMessage() );
    }
    /* CODE */
    ?>[/PHP]

    Hier gäbe es nur eine normal [b]Notice[/b] meldung bei Syntaxerror im [color=Indigo]error.php[/color]. Aber nicht mit [color=Green]try[/color] abgefangen

    lg

    Iwan

  7. Um mein ersten Post abzuschließen:

    JA Leute ich hatte ne Chance auch wenn sie klein war.

    Der weg war zwar schwer bis dahin, aber über 200 Bewerbungen und ~30 Vorstellungsgespräche gab es den einen Betrieb der nicht nach meiner Bildung sondern Können orteilte und mir ein Praktikum gab.

    Bin gerade im 2ten Lehrjahr als FIAE!!!!!!!!!!

    lg

    Iwan

  8. Hallo Forum,

    Ich möchte gerne mein alten PC als MediaCenter missbrauchen. Er soll primer erstma TV anzeigen und DVD+Musik abspielen. Das ganze von der Fernbedinung gesteuert werden.

    Später: Skype

    Ausstattung:

    -OS: XP Pro SP3 DE

    -CPU: AMD Althon 64 2GHz

    -RAM: 2GB DDR

    -Festplatte: SATA2 120GB

    -Grafik: ATI Radeon 9200 + TVout

    -DVB-S: Technisat SkyStar2

    Nach Wochenlangen googeln, testen und reinstallieren komm ich nicht weiter -.-'

    Hab schon suse mit mythtv und mythbuntu getestet und keins der beiden auch nur annehrend funktioniert. Mediaportal, TVgeneral, MCE und viele andere programme auf XP getesten. Nix hatt gefunkt. Selbst das original Soft (DVBViever) geht nach halber stunde aus. :-|

    BITTE kann jeman, der anehrend schon erfahrung hatt was MC angeht, mir par tips geben :(

    Ich freu mich auf jede art von Hilfe :P

    Danke vm Voraus.

    LG Iwan

  9. also nach unzählige Tests bin ich auf folgendes gekommen

    RewriteEngine on
    
    RewriteRule ^(.*)$ ../cms/cms.php?url=%{HTTP_HOST}%{REQUEST_URI}&%{QUERY_STRING} [L]
    
    

    Ergebniss:

    http://subdomain.domain.de/folder/folder/file.präfix?var=value&var2=value2#anker

    wird nach

    ../cms/cms.php?url=subdomain.domain.de/folder/folder/file.präfix&var=value&var2=value2

    übergeben

    jezt fehlt nur noch der Anker -.-'

    oder brauch ich das für Browser nich?:confused:

    lg

    Iwan

  10. aber du willst jeden __set und __get Aufruf mitloggen ?
    Ja aber das auch nur für tests bzw. in den fällen wo ich keine ausgabe habe wie kommunikation zwischen 2 servern.

    Ich würde eher Exceptions empfehlen... ich bezweifle das du jeden Anwendungsfall so detailiert durchtesten wirst, mit jeder Variablenkombination o.ä. ^^ Für den fall der Fälle können exceptions dann zur Laufzeit verarbeitet werden.
    Exceptions werden bereits in allen functionen/klassen/methoden verwendet und verarbeitet.

    leider hab ich noch keine lösung gefunden für loggen bei fatal errors. Ich recherschiere gerade wie ich mit hilfe von bash scripten die PHP scripte unter aufsicht zu halten, aber leider momentan erfolglos.

    Ich dank dir aufjede Fall für Antwort, ich versuch troztdem ein guten debbuger weiter zu entwickelt ;) und werd dann ma ins Forum Posten wenn was guter rauskomt :D

    Liebe Grüße

    J.Schmidt

  11. Hallo Allerseits :P

    Hat jemand erfahrung mit der Funktion debug_backtrace()?

    Also ich verwende diese für debuggen und error reporting, leider muss ich imme viel zu viel zeilen Coden.

    Hier ein kleine Codeausschnit:

    <?php
    //debug.php
    class log {
    private $log;
    private $err;
    function __construct() {
    $this->log[0] = "create class log: ".__file__;
    ob_start();
    function err() {
    global $log;
    $args = func_get_args();
    $temp = debug_backtrace();
    $temp = $temp[0][file] . " on " . $temp[0][line];
    $log->err($temp, $args);
    }
    function debug() {
    global $log;
    $args = func_get_args();
    $temp = debug_backtrace();
    $temp = $temp[0][file] . " on " . $temp[0][line];
    $log->debug($temp, $args);
    }
    }
    public function save() {
    echo "<!-- /*\r\n# BEGIN DEBUG\r\n\r\n";
    echo implode($this->log, "\r\n" );
    echo "\r\n\r\n# END DEBUG\r*/// -->\r\n";
    }
    public function debug($ziel, $args) {
    if( count($args) != 0) {
    $this->log[] = "DEBUG ". $ziel;
    $temp = array();
    for($i = 0; $i < count($args); $i++) {
    $temp[] = var_export($args[$i], true);
    }
    $this->log[] = str_replace("\n", "\n\t", "\t".implode($temp, "\r\n" ));
    }
    }
    public function err($ziel, $args) {
    if( count($args) != 0) {
    $this->log[] = "ERROR ". $ziel;
    $this->err[] = "ERROR ". $ziel;
    $temp = array();
    for($i = 0; $i < count($args); $i++) {
    $temp[] = var_export($args[$i], true);
    }
    $this->log[] = str_replace("\n", "\n\t", "\t".implode($temp, "\r\n" ));
    $this->err[] = str_replace("\n", "\n\t", "\t".implode($temp, "\r\n" ));
    }
    }
    function __destruct() {
    $PAGE_OUTPUT = ob_get_contents();
    ob_end_clean();
    $this->save();
    echo $PAGE_OUTPUT;
    }
    }
    $log = new log;
    ?>[/PHP]

    [PHP]<?php
    //testClass.php
    class testClass {
    private $vars;
    private function __set($Name, $Value) {

    /* DEBUG */$temp = debug_backtrace();
    /* DEBUG */$temp = $temp[0][file].' on '.$temp[0][line];
    /* DEBUG */debug('__set() '.$temp, $Name, $Value);

    $this->vars[$Name] = &$Value;
    }
    private function __get( $Name ) {
    if( isset( $this->vars[$Name] ) ) {

    /* DEBUG */$temp = debug_backtrace();
    /* DEBUG */$temp = $temp[0][file].' on '.$temp[0][line];
    /* DEBUG */debug('__get() '.$temp, $Name);

    return $this->vars[$Name];
    } else {

    /* DEBUG */$temp = debug_backtrace();
    /* DEBUG */$temp = $temp[0][file].' on '.$temp[0][line];
    /* DEBUG */err('__get() '.$temp, '"'.$Name.'" not exist');

    return NULL;
    }
    }
    }
    ?>

    <?php
    //index.php
    require_once('debug.php');
    require_once('testClass.php');

    $test = new testClass;
    $test->var1 = "my var 1";
    echo $test->var1;
    echo $test->var2;
    ?>[/PHP]

    HTML Ausgabe Quelltext

    [code]<!-- /* # BEGIN DEBUG create class log: /var/www/web4/html/test/debug.php DEBUG /var/www/web4/html/test/testClass.php on 8 '__set() /var/www/web4/html/test/index.php on 6' 'var1' 'my var 1' DEBUG /var/www/web4/html/test/testClass.php on 17 '__get() /var/www/web4/html/test/index.php on 7' 'var1' ERROR /var/www/web4/html/test/testClass.php on 24 '__get() /var/www/web4/html/test/index.php on 8' '"var2" not exist' # END DEBUG */// --> my var 1[/code]

    bis jetz muste ich immer umständlich in alle functionen und methoden die Function debug_backtrace(); verwenden um vom caller __FILE__ und __LINE__ zu erfahren und dann an debug() bzw. err() übergeben.

    Kennt einer vieleicht eine möglichkei wie ich nur debug($verte) und err($werte) verwende und trotzdem den gesamte ablauf rausfinde?

    ich Dank schonmal in voraus ^^

    lg


  12. function &__get($objName) {
    if(isset($this->objs[$objName])){
    $return =& $this->objs[$objName];
    } else {
    $return = NULL;
    }
    return $return;
    }[/PHP]

    noch nie gesehen diese notation, scheint aber zu funktionieren.

    oder

    [PHP]
    function __get($objName) {
    if(isset($this->objs[$objName])){
    return $this->objs[$objName];
    } else {
    $return = NULL;
    }
    return $return;
    }

    Es sei gesagt das Pointer in PHP keine gute idee sind, dafür ist es ein viel zu instabiles Sprachelement das schnell zu verwirrung führt, gleichzeitig arbeitest du mit magischen methoden (__get, __set) ich würde mir da eine alternative überlegen, gut möglich das es je nach PHP version mal nicht geht.

    Da ich nur 1 Paket für Grundfunktionen, wo der rest darauf basiert, entwickle. Mach ich mir keine Gedanken um PHP version. Da unsere Server PHP nur beim beginn eines Projektes draufgespielt wird. Sollte der Fall aber Auftreten, muss ich nur die Grundfunktionen anpassen.


    function __get($objName) {
    if(isset($this->objs[$objName])){
    return $this->objs[$objName];
    } else {
    $return = NULL;
    }
    return $return;
    }
    [/PHP]

    würde bei mir nicht klappen, da das eine vereeinfachte Klasse ist, ist da nicht alles drinne.

  13. versuch ma das


    <?php
    $odbc_name = 'Logon';
    $db_user = 'xxx';
    $db_passwort = 'xxx';
    $db = odbc_connect($odbc_name, $db_user, $db_passwort);
    $username = $_POST["username"];
    $passwort = $_POST["passwort"];
    $passwort2 = $_POST["passwort2"];
    $passwort = md5($passwort);
    $sql = "SELET `Benutzername`
    FROM `mitglieder`
    WHERE
    `Benutzername` = '".$username."'
    ;)";
    $buffer = odbc_exec($db, $sql);
    $result = array();
    while(odbc_fetch_row($buffer)) {
    $field1 = odbc_result($buffer, "username")
    $field2 = odbc_result($buffer, "passwort")
    $result[] = compact('$field1', '$field2')
    }
    if(count($result) >= 1) {
    $sql = "INSERT INTO `mitglieder`
    (`Benutzername` , `Kennwort`)
    VALUES ('".$username."', '".$passwort."')
    ;";
    $dbc = odbc_exec($db, $sql);
    if ($dbc == false) {$strErrorMessage = odbc_errormsg($db);

    echo "<b>".($strErrorMessage)."</b>"."<br>"."<br>";

    }
    echo ("Der Benutzer ".$username." wurde erstellt ");
    } else {
    echo ("Der Benutzer ".$username." ist bereits ".count($result)." mal vorhanden ");
    }
    odbc_close($db);
    ?>
    [/PHP]

    lg

  14. Ich will jetzt halt vorweg eine ausgabe haben, ob ein benutzer schon vorhanden ist.

    danke schonmal im voraus, aber ich selber kriegs irgendwie nicht hin

    <?php
    $odbc_name = 'Logon';
    $db_user = 'xxx';
    $db_passwort = 'xxx';
    $db = odbc_connect($odbc_name, $db_user, $db_passwort);
    $username = $_POST["username"];
    $passwort = $_POST["passwort"];
    $passwort2 = $_POST["passwort2"];
    $passwort = md5($passwort);
    $sql = "SELET `Benutzername`
    FROM `mitglieder`
    WHERE
    `Benutzername` = '".$username."'
    ;)";
    $dbc = odbc_exec($db, $sql);
    //hier muste dann $dbc verarbeiten und ($result) mit TRUE setzen wenn nichts ausgegeben wird
    //da ich mich nur in MySQL auskenne mach ich nur komentare ^^
    if($result) {
    $sql = "INSERT INTO `mitglieder`
    (`Benutzername` , `Kennwort`)
    VALUES ('".$username."', '".$passwort."')
    ;";
    $dbc = odbc_exec($db, $sql);
    if ($dbc == false) {$strErrorMessage = odbc_errormsg($db);

    echo "<b>".($strErrorMessage)."</b>"."<br>"."<br>";

    }
    echo ("Der Benutzer ".$username." wurde erstellt ");
    } else {
    echo ("Der Benutzer ".$username." ist bereits vorhanden ");
    }
    odbc_close($db);



    ?>[/PHP]

  15. Ich merke grad das es nicht gehen kann, da zbs. ein string $testObj->myVirtualVar = "text" nicht verlinkbar ist.

    Daher auch die Fehlermeldung wenn ich bei Methode __set den 2 Argument referenziere.

    Die altanative wäre


    $testObj->myVirtualVar = 10; //im $testObj->objs['myVirtualVar'] wird int 10 gesezt;
    $myVar = &$testObj->myVirtualVar; //$myVar wird zu $testObj->objs['myVirtualVar'] referenziert
    [/php]

    doch irgen wie scheitert die Referenzierung $myVar = &$testObj->myVirtualVar;

    [PHP]class parentClass {
    var $objs = array();
    function __set($objName, $objVars) {
    $this->objs[$objName] = $objVars;
    }
    function __get($objName) {
    if(isset($this->objs[$objName])){
    $return =& $this->objs[$objName];
    } else {
    $return = NULL;
    }
    return $return;
    }
    function load($objName, &$obj) {
    if(isset($this->objs[$objName])){
    unset($this->objs[$objName]);
    }
    $this->objs[$objName] =& $obj;
    }
    }
    class kidClass extends parentClass{
    //code
    }
    $testObj = new kidClass();


    $testObj->myVirtualVar = 10;
    $myVar = &$testObj->myVirtualVar;
    $testObj->myVirtualVar++;
    $myVar--;
    echo '$testObj->myVirtualVar = ' . $testObj->myVirtualVar . "<br />\n\r";
    echo '$myVar = ' . $myVar . "<br />\n\r";

    $myVar2 = 20;
    $testObj->load("myVirtualVar2", $myVar2);
    $testObj->myVirtualVar2++;
    $myVar2--;
    echo '$testObj->myVirtualVar2 = ' . $testObj->myVirtualVar2 . "<br />\n\r";
    echo '$myVar2 = ' . $myVar2 . "<br />\n\r";

    /* Ausgabe:
    $testObj->myVirtualVar = 11
    $myVar = 9
    $testObj->myVirtualVar2 = 20
    $myVar2 = 20

    Endprodukt soll:
    $testObj->myVirtualVar soll nur die Referenz zu $myVar ohne der load() Methode erhalten
    $testObj->myVirtualVar2 soll nur die Referenz zu $myVar2 mit der load() Methode erhalten
    */

  16. Probiers mal so:

    <?php 
    class parentClass {
    protected $objs = array();
    protected function __set($objName, $objVars) {
    $this->objs[$objName] =& $objVars;
    }
    protected function __get($objName) {
    if(isset($this->objs[$objName])){
    $return =& $this->objs[$objName];
    } else {
    $return = NULL;
    }
    return $return;
    }
    public function load($objName, &$obj) {
    if(isset($this->objs[$objName])){
    unset($this->objs[$objName]);
    }
    $this->objs[$objName] = &$obj;
    }
    }
    class kidClass extends parentClass{
    //code
    }
    $testObj = new kidClass();


    $myVar = 10;
    $testObj->load("myVirtualVar", &$myVar);
    //$testObj->myVirtualVar = &$myVar;
    $testObj->myVirtualVar++;
    $myVar--;
    echo '$testObj->myVirtualVar = ' . $testObj->myVirtualVar . "<br />\n\r";
    echo '$myVar = ' . $myVar . "<br />\n\r";
    /* Ausgabe: 1
    $testObj->myVirtualVar = ??
    $myVar = 9
    */
    $myVar2 = 20;
    $testObj->load("myVirtualVar2", $myVar2);
    $testObj->myVirtualVar2++;
    $myVar2--;
    echo '$testObj->myVirtualVar2 = ' . $testObj->myVirtualVar2 . "<br />\n\r";
    echo '$myVar2 = ' . $myVar2 . "<br />\n\r";
    /* Ausgabe: 2
    $testObj->myVirtualVar2 = ??
    $myVar2 = 19
    */
    ?>[/PHP]

    Eine Zeile habe ich auskommentiert. Der Fehler war, dass du versuchst auf eine Eigenschaft zuzugreifen, welche noch nicht definiert war. Simpler Fehler mit bösem Effekt ;)

    Gruß vom TsChIeP :D

    Also das ist nicht Hilfreich da das Endprodukt so ausehen soll:

    $testObj->myVirtualVar soll nur die Referenz zu $myVar ohne der load() Methode erhalten

    $testObj->myVirtualVar2 soll nur die Referenz zu $myVar2 mit der load() Methode erhalten

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...