Allgemeine Frage

Raptor72

Mitglied
Hi Leutz,

keine Angst und nicht erschrecken wenn ihr den Code seht, diesmal geht es nicht um einen Fehler als vielmehr um Eure Meinung ob man das Script so schreiben kann, sprich mit den ganzen php Teilen alles in einer Datei (Es gibt noch mehr Dateien 'Seiten' der Website) oder ob es besser wäre alles in externe Dateien auszulagern.

Welche Probleme könnten so auftauchen weil funktionieren tut es bis jetzt super ****

Wenn es euch zu viel Code ist dann vergesst die Frage einfach, will ja niemanden ärgern ;-)

Achso, wenn es einer weiß, das refresh funktioniert unter Firefox 5 nicht ;-)

PHP:
<?php 
   session_start();
   
  $verbindung = mysql_connect("*****","****","******") or DIE ("Verbindung konnte nicht hergestellt werden !");
  mysql_select_db("page") or DIE ("Datenbank existiert nicht");

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="refresh" content="30;URL=index.php">
<title>Singlepage v1.0 Beta 1</title>
<link href="layout.css" type="text/css" rel="stylesheet" />

</head>

<body style="background-image:url(bg/body6.jpg); background-attachment:fixed;" >
<div class="view">
<table class="logo">
  <tr>
    <th>&nbsp;</th>
  </tr>
</table>

<p></p>


<table class="navigation">
 <?php
  if(isset($_SESSION['username']))
    {
        $username = $_SESSION['username'];
        $datum_last = date("d.m.Y - H:i");

        $eintrag = "UPDATE `mitglieder` SET `status` = 'online', `datum_last` = '$datum_last' WHERE `username` = '".$username."'";
        $eintragen = mysql_query($eintrag);

      echo "<tr><td colspan='2' width='750px'><div id='menue'><div class='aussen'>";
      echo "<span class='menutag'>Mein Profil</span>";
      echo "<a class='innen' href='#'>Profilvorschau</a>";
      echo "<a class='innen' href='userdaten.php'>Pers&ouml;nliche Daten</a>";      
      echo "<a class='innen' href='profildaten.php'>Profildaten 1</a>";      
      echo "<a class='innen' href='profildaten2.php'>Profildaten 2</a>";      
      echo "<a class='innen' href='#'>Einstellungen</a>";
      echo "<a class='innen' href='#'>G&auml;stebuch</a>";      
      echo "<a class='innen' href='#'>Premium Mitglied werden</a></div>";      
      
      echo "<div class='aussen'>";
      echo "<span class='menutag'>Meine Nachrichten</span>";
      echo "<a class='innen' href='#'>Posteingang</a>";
      echo "<a class='innen' href='#'>Postausgang</a>";      
      echo "<a class='innen' href='#'>Meine Ordner</a>";      
      echo "<a class='innen' href='#'>Nachrichten-Filter</a>";      
      echo "<a class='innen' href='#'>Einstellungen</a>";
      echo "<a class='innen' href='#'>Scam melden !</a></div>";      

      $abfrage2 = "SELECT `status` FROM `mitglieder` WHERE `status` = 'online'";
      $ergebnis2 = mysql_query($abfrage2);
      $anzahl2 = mysql_num_rows($ergebnis2);
      
      echo "<div class='aussen'>";
      echo "<span class='menutag'>Mitglieder Suche</span>";
      echo "<a class='innen' href='#'>Singlesuche</a>";
      echo "<a class='innen' href='#'>Wer hat Geburtstag</a>";      
      echo "<a class='innen' href='#'>User online (".$anzahl2.")</a>";      
      echo "<a class='innen' href='#'>Erfolgsgeschichten</a></div>";      

      echo "<div class='aussen'>";
      echo "<span class='menutag'>Extras</span>";
      echo "<a class='innen' href='#'>Extras</a></div></div></td>";
            
      echo "<td align='center'><font size='+2'>Hallo </font><font size='+2' color='#000080'>" . $_SESSION["username"];
      echo"</font>";
      echo"<form action='logout.php' method='post' target='_self'>";
      echo"<input type='submit' class='anmeldeweiter' style='width:180px;height:25px;' name='logout' value='Logout'>";
      echo "</td></tr></form>";
    }
    else
    {

?>
  <tr>
   <th width="33%">
   </th> 
    <th align="right" colspan="2">
      <form id="form1" method="post" action="" target="_self">
        <label for="username">Username</label>
        <input type="text" name="username" id="username" title="Benutzername hier eingeben" style="background-color:#CCC"/>
        <label for="password">Passwort</label>
        <input type="password" name="password" id="password" style="background-color:#CCC"/>
        <input type="submit" class="anmeldeweiter" style="width:60px;height:20px;" name="login" id="login" value="GO !" />
      </form>
    </th>
  </tr>
<?php 
    }
?>
</table>
<p></p>

<table class="anzeigebodie" cellpadding="10" >
  <tr>
      <td colspan="3" align="center" class="willkommen">Willkommen auf Homepage !</td>
  </tr>
  <tr>
      <td align="center" colspan="3">
       <script>
          var d = new Date()
          var Monat = new Array("Januar","Februar","M&auml;rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");
          document.write(d.getDate())
          document.write(" ")
          document.write(Monat[d.getMonth()])
          document.write(" ")
          document.write(d.getFullYear())
       </script>
      </td>
  </tr>
  <tr>
  <td colspan="3" align="center" class="text3"><u><b>Neu anmelden !</b></u>
  </td>
  </tr>
<form action="" method="post" name="register">  
  <tr>
    <td width="45%" align="center">
      <label for="Username">Username :</label>
    </td>
    <td colspan="2" align="left">
        <input name="username" type="text" id="username" size="30" maxlength="20" style="background-color:#CCC" value="<?php echo $_POST["username"]; ?>"/>
        <input type="submit" name="pruefen" value="pr&uuml;fen" class="anmeldeweiter"  style="width:50px;height:20px"/>
          <?php
              if(isset($_POST["pruefen"]))
            {
                $username = $_POST["username"];
                if($username == "")
            {
                echo "Nicht spielen ;-)";
            }
            else
            {
                $abfrage = "SELECT `username` FROM `mitglieder` WHERE `username` = '$username'";
                $ergebnis = mysql_query($abfrage);
                $frage = mysql_num_rows($ergebnis);
                if($frage > 0)
                {
                    echo "schon besetzt";
                }
                else
                {
                    echo "<font color='#009900'>frei</font>";
                }
            } 
        }
  ?>

    </td>
  </tr>
  <tr>
    <td width="33%" align="center">
      <label for="password">Passwort :</label>
    </td>
    <td colspan="2" align="left">
      <input name="password" type="password" id="password" size="30" maxlength="50" style="background-color:#CCC" />
    </td>
  </tr>  
  <tr>
    <td width="33%" align="center">
        <label for="password_repeat">Passwort wiederholen :</label>
    </td>
    <td>
        <input name="password_repeat" type="password" id="password_repeat" size="30" maxlength="50" style="background-color:#CCC" />
    </td>
  </tr>
  <tr>
    <td width="33%" align="center">
        <label for="mailadr">E-Mail :</label>
    </td>
    <td>
        <input name="mailadr" type="text" id="mailadr" size="30" maxlength="50" style="background-color:#CCC" value="<?php echo $_POST["mailadr"]; ?>"/>
    </td>
  </tr>
    <tr>
  <td width="33%" align="center">
    <label for="wassuche">Ich suche :</label>
  </td>
  <td colspan="2" class="text3">
     <input type="checkbox" name="wassuche[]" value="mann" style="background-color:#CCC" />einen Mann<br />
     <input type="checkbox" name="wassuche[]" value="frau" style="background-color:#CCC" />eine Frau<br />
     <input type="checkbox" name="wassuche[]" value="beides" style="background-color:#CCC" />Beides<br />
  </td>
  </tr>
  <tr>
  <td width="33%" align="center">
    <label for="sichercode">Bitte Sicherheitscode eingeben :</label>
  </td>
  <td colspan="2">
     <input name="sichercode" type="text" size="6" maxlength="5" style="background-color:#CCC" />
  </td>
  </tr>

  <tr>
    <td align="center" colspan="3">
        <input type="submit" name="weiter" class="anmeldeweiter" value="weiter" />
        <input type="reset" name="loeschen" class="anmeldeweiter" value="doch nicht!" />
    </td>
  </tr>
  <tr>
    <td colspan="3">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3">&nbsp;</td>
  </tr>
</form>
</table>

       <table align="center" class="infosmall" onmouseover="style.borderColor='#7fff00'" onmouseout="style.borderColor='#93F'">
          <tr>
             <td valign="top" align="center" class="text3"><u>Mitglieder</u><br /><br />
                 <?php
    
                     $mgesamt = "SELECT `username` FROM `mitglieder`";
                       $ergebnis1 = mysql_query($mgesamt);
                       $anzahl1 = mysql_num_rows($ergebnis1);

                    $monline = "SELECT `status` FROM `mitglieder` WHERE `status` = 'online'";
                    $ergebnis2 = mysql_query($monline);
                      $anzahl2 = mysql_num_rows($ergebnis2);
                    
                    $mmaennlich = "SELECT `geschl` FROM `mitglieder` WHERE `geschl` = 'm'";
                    $ergebnis3 = mysql_query($mmaennlich);
                    $anzahl3 = mysql_num_rows($ergebnis3);

                    $mweiblich = "SELECT `geschl` FROM `mitglieder` WHERE `geschl` = 'w'";
                    $ergebnis4 = mysql_query($mweiblich);
                    $anzahl4 = mysql_num_rows($ergebnis4);
                           
                       echo "User online (".$anzahl2.")<br>";
                       echo "Mitglieder gesamt (".$anzahl1.")<br>";                    
                    echo "m&auml;nnliche User (".$anzahl3.")<br>";        
                    echo "weibliche User (".$anzahl4.")";        
                   
                ?>

             </td>
             
          </tr>
       </table>

       <table align="center" class="infoshow" onmouseover="style.borderColor='#7fff00'" onmouseout="style.borderColor='#93F'">
          <tr>
             <td valign="top" align="center" class="text3"><u>User online</u><br /><br />
                 <?php
    
                   $user = "SELECT `id`,`username`,`geschl` FROM `mitglieder` WHERE `status` = 'online' ORDER BY RAND() LIMIT 15";
                      $useronline = mysql_query($user);
                      while($row = mysql_fetch_assoc($useronline))
                   {
                      echo "<a href='lookprofile.php?id=$row[id]'>".$row['username']."(".$row['geschl'].")</a> <br>";

                      }
                   
                ?>

             </td>
             
          </tr>
       </table>

<?php
if(isset($_POST["weiter"]))
{
    $username = $_POST["username"];
    $password = $_POST["password"];
    $password_repeat = $_POST["password_repeat"];
    $mailadr = $_POST["mailadr"];
    $wassuche = $_POST["wassuche"];

    if($password != $password_repeat OR $password == "" OR $password_repeat == "")
    {
      echo'<script type="text/javascript">alert ("Fehler bei den Passwoertern !");</script>';
      echo'<script>history.back();</script>';
    }
    else
    {
    if($wassuche == "")
    {
      echo'<script type="text/javascript">alert ("Du hast nicht angegeben was du suchst !");</script>';
      echo'<script>history.back();</script>';
    }
    else
    {
      $auswahl = implode(',',$wassuche);
      echo $auswahl;
    }
}
}
if(isset($_POST["login"]))
{
  
  $username = $_POST["username"];
  $password = md5($_POST["password"]);
  
  $abfrage = "SELECT username, password FROM mitglieder WHERE username LIKE '$username' LIMIT 1";
  $ergebnis = mysql_query($abfrage);
  $row = mysql_fetch_object($ergebnis);
  
  if($row->password == $password)
  {
      $_SESSION["username"] = $username;
?>
<script language="javascript" type="text/javascript">
setTimeout("location.href='index.php'", 10);
</script>
<?php
  }
else
{
    echo'<script type="text/javascript">alert ("Benutzername oder Passwort falsch !");</script>';
    echo'<script>history.back();</script>';
} 
}
?>

</div>
</body>
<?php 
   mysql_close($verbindung);
?>
</html>

Ist ein Projekt von mir was ich auch gern wenn ich es weiter so hinbekomme online stellen will.
Und ich kann so am besten lernen. :D

PS: Bei Opera und Ie9 funktioniert es Problemlos mit dem refresh, ist aber auch nicht ganz so wichtig.
 
Wie Du selbst sagst, es funktioniert. Vielleicht kannst Du es Dir einfacher machen, indem Du die ganzen inline-php-Schnippsel als Funktionen an den Anfang packst, um mehr Ordnung reinzukriegen. Dann hast Du einen Haufen und siehst vielleicht noch Optimierungsmöglichkeiten..

mfg chmee
 
Zuletzt bearbeitet:
du hast schon den FireFox 5? nicht schlecht *g*
also beim 4er bekommt man es nicht wirlich mit ob er einen Refresh macht wenn die Seite ziemlich schnell geladen wurde. Vielleicht mal den HttpFox verwenden oder Firebug, da siehste was bei einem Refresh gemacht wird.
 
Jap stimmt aber wirklich mit Firefox 5, siehe selbst :-D

Danke für eure Tips, werde mal das Script etwas umgestalten sodass es ein wenig übersichtlicher wird ;-)
 

Anhänge

  • Unbenannt.png
    Unbenannt.png
    90,2 KB · Aufrufe: 5
Das Ganze geht auch mit weniger echo's ;).

Ansonsten kannst du, um es übersichtlicher zu machen, auch das HTML als Template auslagern und dann mit include laden. Ansonsten würde ich dir dazu raten, wie schon gesagt, eine Funktion daraus zu basteln create_navigation() oder in der Art.
 
Zurück