Suche jemanden, der 1-2 Scripte anschauen und verbessern könnte

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Suche jemanden, der 1-2 Scripte anschauen und verbessern könnte

    Ich,
    Anfänger in Php habe mit Freunden ein Onlinegame entwickelt.
    Jedoch sind wir alle Anfänger und lernen durch diese entwicklung.
    Nun benötige ich jedoch einen Profi, der sich meine Scripte anschauen könnte (kostenlos) und die mir verbessern könnte.
    Am besten mit Kommentaren so das ich weiß was man besser machen kann, sollte das nächste mal.

    Bei Interesse unter blade@oos4u.de melden

    DAnke

  • #2
    warum postest du das script nicht einfach hier?

    so können viele leute sich das eben ansehen und verbesserungen geben.

    wenn du nicht alles posten willst, kannst du auch nur einen teil posten und die evtl. verbesserungen auf den rest deiner beiden scripte übertragen.
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Die Scripte sind leider etwas länger.

      Kommentar


      • #4
        wie gesagt ..... ein stückchen posten .... verbessern lassen ..... dann entsprechend den rest anpassen. usw.

        und zum anderen gibt es einen anhang an die posts ...
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          ok
          bräuchte das verbessert.

          PHP-Code:
          <?php

          // Datenbankverbindung herstellen
              
          include('./includes/db.php');    
          //Anzahl aller Spieler
          @$SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
           @
          $all_user mysql_num_rows($SQL_Result) - 1;
          //Anzahl aller Spieler
          @$SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='sessionid';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
           @
          $online_sessionid_num mysql_num_rows($SQL_Result);
          $online_sessionid 0;
          for (
          $i=0;$i<$online_sessionid_num;$i++){
          @
          $SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='sessionid';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
              if ( 
          "" == mysql_result($SQL_Result$i'wert')){
               
          $online_sessionid $online_sessionid 1;
               }
           }
          //Anzahl Speiler pro Rasse
          @$SQL_Result mysql_query("SELECT * FROM def_rassen WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
           @
          $rasse_anzahl_aller_num mysql_num_rows($SQL_Result);
          for (
          $i=0;$i<$rasse_anzahl_aller_num;$i++){
           @
          $SQL_Result mysql_query("SELECT * FROM def_rassen WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
            @
          $rasse[$i][0] = mysql_result($SQL_Result$i'wert');
            @
          $rasse[$i][1] = mysql_result($SQL_Result$i'rassenid');
            
          $check $rasse[$i][1];
           @
          $SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='rasse' AND wert='$check';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
            @
          $rasse[$i][2] = mysql_num_rows($SQL_Result);
              }
          //Anzahl aller Allianzen
          @$SQL_Result mysql_query("SELECT * FROM allianzen WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');    
           @
          $allianz_anzahl_aller_num mysql_num_rows($SQL_Result);

          //Ausgabe

          ?>
          EDIT:
          php.tags powered by Abraxax
          Zuletzt geändert von Abraxax; 21.07.2003, 21:09.

          Kommentar


          • #6
            und:

            PHP-Code:
            <?php
                
            //Dateinen includieren
                
            include("includes/db.php");

                
            //Session ID checken
                
            include("includes/spieler_test.php");

                
            //Laden der Spielerdaten
                
            $SQL_Result mysql_query("SELECT * FROM nachrichten WHERE an='$user'"$SQL_DBConn)
                        or die(
            "Server überlastet!");
                
            $anzahlnachrichten mysql_num_rows($SQL_Result);
                
                for(
            $i=0$i $anzahlnachrichten$i++)
                {
                    
            $von[$i] = mysql_result($SQL_Result$i'von');
                    
            $zeit[$i] = mysql_result($SQL_Result$i'zeit');
                    
            $ueberschrift[$i] = mysql_result($SQL_Result$i'ueberschrift');
                    
            $inhalt[$i] = mysql_result($SQL_Result$i'inhalt');
                    
            $typ[$i] = mysql_result($SQL_Result$i'typ');
                    
                    
                    
            //Herrausfinden des Absenders anhand der Spieler ID 
                    
                    
            $SQL_R mysql_query("SELECT * FROM spieler WHERE spielerid='$von[$i]' AND angabe='name'"$SQL_DBConn)
                        or die(
            "Server überlastet!");
                        
                    
            $vonname[$i] = mysql_result($SQL_R0'wert');
                    
                    
            //Generieren der Nachrichteneinträge
                    
            if( $action=="lesen" && $id==$i && $s==$s )
                    {
                        
            ?>
              <br>
            </div>
            <div align="center"></div>
            <div align="center"></div>
                        <div align="center">
                          <table width="90" border="0" cellspacing="0" cellpadding="0">
                        <tr> 
                          <td colspan="3"><img src="images/story_up.gif" width="450" height="17"></td>
                        </tr>
                        <tr> 
                          <td width="10" background="images/story_left.jpg">&nbsp;</td>
                          <td width="431" background="images/story_bg.gif">
                        <div align="center"> <br>
                          <table width="403" border="0" cellspacing="0" cellpadding="0">
                        <tr> 
                        <td colspan="2"> &nbsp;<strong><? echo $ueberschrift[$i]; ?> </strong>geschrieben
                        von<strong> <? echo $vonname[$i]; ?> </strong>am<strong> <? echo $zeit[$i]; ?></strong>
                        <hr></td>
                        </tr>
                        <tr> 
                        <td colspan="2">&nbsp;<? echo $inhalt[$i]; ?>
                        <hr></td>
                        </tr>
                        <tr> 
                        <td width="210"> 
                        <div align="center"> 
                        <form name="form2" method="post" action="nachrichten.php?action=löschen&id=<? echo $i; ?>&s=<? echo $s; ?>">
                        <div align="center"><br>
                        <input name="Submit3" type="submit" value="L&ouml;schen">
                        <input name="name" type="hidden" value="<? echo $inhalt[$i]; ?>">
                        </div>
                        </form>
                        </div></td>
                        <td width="187"> 
                        <form name="form3" method="post" action="nachrichten.php?s=<? echo $s; ?>">
                        <div align="center"><br>
                        <input type="submit" name="Submit4" value="Beantworten">
                        <input name="re" type="hidden" value="<? echo $vonname[$i]; ?>">
                        <input name="ret" type="hidden" value="<? echo("RE: $ueberschrift[$i]"); ?>">
                        </div>
                        </form></td>
                        </tr>
                          </table>
                          <br>
                          <a href=nachrichten.php?s=<? echo $s; ?> target=_self>&lt; Zur&uuml;ck</a> 
                          <br>
                          <br>
                        </div></td>
                          <td width="9" background="images/story_right.jpg">&nbsp;</td>
                        </tr>
                        <tr> 
                          <td colspan="3"><img src="images/story_down.gif" width="450" height="17"></td>
                        </tr>
                          </table>
                          <p><br>
                          </p>
                          <p> 
                        <?
                    }
                    if( $action=="löschen" && $id==$i && $s==$s )
                    {
                        $SQL_kill = mysql_query("DELETE FROM nachrichten WHERE inhalt='$name'", $SQL_DBConn)
                                 or die("Server überlastet - Nachricht nicht löschbar!");
                        echo("Nachricht gelöscht<br>");
                        echo("<a href=nachrichten.php?s=$s target=_self>&lt; Zur&uuml;ck</a>");
                    }
                }

                //Senden der Nachricht
                if( $action == "senden" && $s == $s)
                {
                    if($an == "" || $text == "" || $betreff == "")
                    {
                        echo("Bitte füllen sie alle Felder aus!<br>");
                        echo("<a href=nachrichten.php?s=$s target=_self>&lt; Zur&uuml;ck</a>");
                    }
                    else
                    {
                        //Sucht anhand des Namens die Spielerid
                        $SQL = mysql_query("SELECT * FROM spieler WHERE wert='$an' AND angabe='name'", $SQL_DBConn)
                            or die("Server überlastet!");
                        
                        $sid = mysql_result($SQL, 0, 'spielerid');
                        $time = date("Y-m-d G:i:s");
                        
                        //Und ab mit der Nachricht !
                        $SQL_send = mysql_query("INSERT INTO nachrichten (an,von,zeit,ueberschrift,inhalt,typ) VALUES ('$sid','$user','$time','$betreff','$text','2');", $SQL_DBConn)
                            or die("Fehler beim Senden");
                        
                        echo("Nachricht gesendet!<br>");
                        echo("<a href=nachrichten.php?s=$s target=_self>&lt; Zur&uuml;ck</a>");
                    }
                }
                
                
                //Frontend
                if( $action == "" )
                {
            ?>

            EDIT:
            php.tags powered by Abraxax
            Zuletzt geändert von Abraxax; 21.07.2003, 21:09.

            Kommentar


            • #7
              benutze bitte die php.tags beim posten von code.

              ich habe in deinem zweiten script das hier gesehen....

              $s == $s

              welchen sinn macht das?


              und in deinem ersten script kann man bestimmt auch erstmal was an der optik des codes machen...
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                habe mal kruz in das erste script geschaut.....

                anmerkunden sind in form von comments im code.

                eingerückt habe ich auch erst einmal richtig. sonst kann man das ja nie lesen....

                PHP-Code:
                <?php

                    
                // Datenbankverbindung herstellen
                    
                include('./includes/db.php');

                    
                //Anzahl aller Spieler
                    
                @$SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='name'"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                    @
                $all_user mysql_num_rows($SQL_Result) - 1;

                    
                // macht sowas sinn?
                    // or die('Interner MySQL Fehler - Server überlastung - User Anfragen')
                    // mache lieber
                    // or die(mysql_error())
                    // draus.
                    
                    // was ist WHERE angabe='name' ?
                    // das kann man doch 100%ig besser in der DB machen.

                    //Anzahl aller Spieler
                    
                @$SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='sessionid';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                    @
                $online_sessionid_num mysql_num_rows($SQL_Result);
                    
                $online_sessionid 0;
                    for (
                $i=0;$i<$online_sessionid_num;$i++)
                    {
                        @
                $SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='sessionid';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                        if ( 
                "" == mysql_result($SQL_Result$i'wert'))
                        {
                            
                $online_sessionid $online_sessionid 1;
                        }
                    }


                    
                //Anzahl Speiler pro Rasse
                    
                @$SQL_Result mysql_query("SELECT * FROM def_rassen WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                    @
                $rasse_anzahl_aller_num mysql_num_rows($SQL_Result);
                    for (
                $i=0;$i<$rasse_anzahl_aller_num;$i++)
                    {
                        @
                $SQL_Result mysql_query("SELECT * FROM def_rassen WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                        @
                $rasse[$i][0] = mysql_result($SQL_Result$i'wert');
                        @
                $rasse[$i][1] = mysql_result($SQL_Result$i'rassenid');
                        
                $check $rasse[$i][1];
                        @
                $SQL_Result mysql_query("SELECT * FROM spieler WHERE angabe='rasse' AND wert='$check';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                        @
                $rasse[$i][2] = mysql_num_rows($SQL_Result);
                    }

                    
                //Anzahl aller Allianzen
                    
                @$SQL_Result mysql_query("SELECT * FROM allianzen WHERE angabe='name';"$SQL_DBConn) or die('Interner MySQL Fehler - Server überlastung - User Anfragen');
                    @
                $allianz_anzahl_aller_num mysql_num_rows($SQL_Result);

                    
                //Ausgabe

                ?>
                und warum schmeisst du immer ein @ vor die zeilen mit den mysql-funktionen? so wirst du nie einen fehler sehen.
                INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                Kommentar


                • #9
                  Ok danke für den Tipp mit dem Design.
                  Das ist jedoch so, da ich zur Zeit keinen Editor haben sondern nur den von Windows.
                  Muss erst neuen wieder installieren.

                  Mir geht es auch eher um Fehler, oder um Verbesserungen die den Server entlassten.

                  Kommentar


                  • #10
                    thema performance.....

                    warum machst du im zweiten script in der auslese-for-schleife ein weiteres select? kann man das nciht besser mit hilfe von mysql verbinden um den absender zu finden?

                    das wäre durchaus zu empfehlen.

                    aber bevor man die scripte optimiert, sollte man sich erst einmal an die DB machen. ich denke mal, dass hier schon so einiges schief gelaufen ist...
                    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                    Kommentar


                    • #11
                      Original geschrieben von Abraxax
                      PHP-Code:
                          // macht sowas sinn?
                          // or die('Interner MySQL Fehler - Server überlastung - User Anfragen')
                          // mache lieber
                          // or die(mysql_error())
                          // draus. 
                      wenn man erst einmal fertig ist mit testen (aber auch erst dann!), macht das meiner meinung nach schon sinn - für den enduser ist es ausreichend zu erfahren, dass ein fehler aufgetreten ist. zusätzliche ausgaben, anhand der z.b. meine tabellen- und spaltennamen ersichtlich sein könnten, braucht der nicht zu kriegen - die machen es hackenden script-kiddies nämlich nur leichter.
                      I don't believe in rebirth. Actually, I never did in my whole lives.

                      Kommentar


                      • #12
                        ok. verstehe ich und stimme dir auch zu, obwohl ich es selber nie so gemacht habe... i.d.r. gibt es keine fehler bei mir...

                        aber zurück zur meldung. solange er entwickelt sollte er es schon wechseln. meine ich mal....
                        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                        Kommentar


                        • #13
                          Original geschrieben von Abraxax
                          i.d.r. gibt es keine fehler bei mir...
                          da meine seite auf einem shared hosting angebot läuft, kommt es natürlich ab und zu mal vor, dass zu viele db-queries ausgeführt werden (wahrscheinlich die noobs schuld ;-)), so dass dann eine fehlermeldung kommt.
                          mit einer meldung á la "datenbank ausgelastet, bitte versuche es gleich noch mal" helfe ich ersten dem benutzer eher weiter, als wenn da die meldung mit " too many connections ..." kommt - und zweitens muss der besucher nicht wirklich wissen, wie der pfad auf dem server heisst, in dem die aktuelle datei liegt ...
                          I don't believe in rebirth. Actually, I never did in my whole lives.

                          Kommentar


                          • #14
                            jojo, haste recht. damit habe ich aber keine probleme...
                            INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                            Kommentar


                            • #15
                              ja ich denke auch der ansatz ist in der datenbank zu suchen.

                              um es erstmal (ohne weitere kenntnisse der db struktur) besser zu machen solltest du mit mysql_fetch_array arbeiten, dann kannst du dir die inneren (in der for-schleife) selects sparen und mit while arbeiten

                              so wie ich das nach dem ersten blick denke, könnte es ein sehr einfaches script am schluß sein!
                              ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
                              und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

                              Kommentar

                              Lädt...
                              X