Anzeige

Hilfe! bin php Newbie

Hilfe! bin php Newbie | PSD-Tutorials.de

Erstellt von zerocool78, 30.09.2008.

  1. zerocool78

    zerocool78 Grafikfrischling

    Dabei seit:
    06.03.2008
    Beiträge:
    106
    Geschlecht:
    männlich
    Ort:
    Leverkusen
    Software:
    Photoshop
    Hilfe! bin php Newbie
    Ich habe folgendes problem, denn ich weiß nicht welchen Wert ich übergeben muss um in eine andere Funktion zu kommen als in die Standart-Funktion Login. Wäre euch dankbar wenn ihr mir die Lösung des Rätsels mitteilen könnt.

    Code (Text):
    1.  
    2. <?
    3. session_start();
    4.  
    5. if ($anmelden) {anmelden();}
    6. else if ($abmelden) {abmelden();}
    7. else if ($forgot) {forgot();}
    8. else {login();}
    9.  
    10. function anmelden()
    11.     {echo 'Nun bist du im Bereich: Anmeldem';}
    12.  
    13. function abmelden()
    14.     {echo 'Nun bist du im Bereich: Abmelden';}
    15.    
    16. function forgot()
    17.     {echo 'Nun bist du im Bereich: Forgot';}
    18.    
    19. function login()
    20.     {echo 'Nun bist du im Bereich: login';}
    21.  
    22. ?>
    23. <form action="<?php echo $_SERVER["PHP_SELF"]; ?>?anmelden=yes" method="post" name="FormName">
    24.     <table cellspacing="1" cellpadding="2" border="0">
    25.     <tr>
    26.     <td><font size="2">Benutzername:</font></td>
    27.     <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
    28.     </tr>
    29.     <tr>
    30.     <td><font size="2">Passwort:</font></td>
    31.     <td><font size="2"><input type="password" name="password" value=""></font></td>
    32.     </tr>
    33.     <tr>
    34.     <td colspan=2 align=center><input type=submit value=Login></td>
    35.     </tr>
    36.     </table>
    37. </form>
    38.  
     
    #1      
  2. Guin

    Guin Nicht mehr ganz neu hier

    Dabei seit:
    18.04.2008
    Beiträge:
    186
    Geschlecht:
    männlich
    Ort:
    Lübeck
    Hilfe! bin php Newbie
    AW: Hilfe! bin php Newbie

    Moin,

    PHP:
    1.  
    2. <?
    3. if ($_POST['anmelden']) {anmelden();}
    4.   else if ($_POST['abmelden']) {abmelden();}
    5.   else if ($_POST['forgot']) {forgot();}
    6.   else {login();
    7. }
    8.  
    9. function anmelden()
    10.     {echo 'Nun bist du im Bereich: Anmeldem';}
    11.  
    12. function abmelden()
    13.     {echo 'Nun bist du im Bereich: Abmelden';}
    14.    
    15. function forgot()
    16.     {echo 'Nun bist du im Bereich: Forgot';}
    17.    
    18. function login()
    19.     {echo 'Nun bist du im Bereich: login';}
    20.  
    21. ?>
    22. <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" name="FormName">
    23. <input type=submit name="abmelden" value="abmelden">
    24. </form>
    25. <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" name="FormName">
    26. <input type=submit name="forgot" value="forgot">
    27. </form>
    28. <form action="<?php echo $_SERVER["PHP_SELF"]; ?>" method="post" name="FormName">
    29.     <table cellspacing="1" cellpadding="2" border="0">
    30.     <tr>
    31.     <td><font size="2">Benutzername:</font></td>
    32.     <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
    33.     </tr>
    34.     <tr>
    35.     <td><font size="2">Passwort:</font></td>
    36.     <td><font size="2"><input type="password" name="password" value=""></font></td>
    37.     </tr>
    38.     <tr>
    39.     <td colspan=2 align=center><input type=submit name="anmelden" value="Login"></td>
    40.     </tr>
    41.     </table>
    42. </form>
    43.  
    44.  
    Mach so zwar nicht viel Sinn, aber das Prinzip sollte nun klar sein. :)
     
    #2      
  3. zerocool78

    zerocool78 Grafikfrischling

    Dabei seit:
    06.03.2008
    Beiträge:
    106
    Geschlecht:
    männlich
    Ort:
    Leverkusen
    Software:
    Photoshop
    Hilfe! bin php Newbie
    AW: Hilfe! bin php Newbie

    ...vielen Dank für die prompte Hilfe! Ich gebe dir in diesem Fall recht, das es nicht viel Sinn macht :D. Ich habe hier im Forum ein "PHP Login Tutorial"

    PSD-Tutorials.de - Login, Logout, Registrieren, Sessions

    PHP:
    1.  
    2. <?
    3.  
    4. # Hier ggf. den Header einfügen!
    5.  
    6. if ($anmelden) { anmelden($fertig, $user, $password1, $password2, $email);}
    7. else if ($abmelden) { abmelden($fertig, $user, $password);}
    8. else if ($forgot) { forgot($fertig, $email);}
    9. else
    10. { login($fertig, $user, $password);}
    11. # hier ggf. den Footer einfügen!
    12.  
    13. ?>
    14.  
    15. <?
    16.  
    17. function inhalt($user)
    18. {
    19.  
    20. ##################################
    21.  
    22. #Bauen Sie hier Ihren Inhalt ein!#
    23.  
    24. ?>
    25.  
    26. <b>Geschützter Inhalt!</b>
    27.  
    28. <?
    29. }
    30. ?>
    31.  
    32. <?
    33. function login($fertig, $user, $password)
    34. {
    35. include("connect.php");
    36.  
    37. if ($fertig) {
    38. $abfrage = mysql_query ("SELECT * FROM login WHERE user = '$user'");
    39. $reihen = mysql_num_rows($abfrage);
    40.  
    41. if ($reihen <= 0) {
    42. echo "Unbekannter Benutzername!";
    43. }
    44.  
    45. else {
    46. while ($row = mysql_fetch_object ($abfrage)) {
    47. if ($row->password==$password) {
    48. inhalt($user);
    49. }
    50.  
    51. else {
    52. echo "Falsches Passwort!";
    53. }
    54. }
    55.  
    56. }
    57.  
    58. }
    59. else {
    60.  
    61.  
    62. echo 'Zum anmelden geht es <a href="'.$PHP_SELF.'?anmelden=yes">hier</a> lang!';
    63. echo '<p><a href="'.$PHP_SELF.'?forgot=yes">Passwort vergessen?</a><br><a href="$PHP_SELF?abmelden=yes">Abmelden</a></p>';
    64. echo '<form method="POST" action="'.$PHP_SELF.'?anmelden=yes&fertig=yes">';
    65.  
    66.  
    67.  
    68. ?>
    69. <table cellspacing="1" cellpadding="2" border="0">
    70. <tr>
    71. <td><font size="2">Benutzername:</font></td>
    72. <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
    73. </tr>
    74. <tr>
    75. <td><font size="2">Passwort:</font></td>
    76. <td><font size="2"><input type="password" name="password" value=""></font></td>
    77. </tr>
    78. <tr>
    79. <td colspan=2 align=center><input type=submit value=Login></td>
    80. </tr>
    81. </table>
    82. </form>
    83.  
    84. <?
    85. echo '<p><a href="'.$PHP_SELF.'?forgot=yes">Passwort vergessen?</a><br><a href="$PHP_SELF?abmelden=yes">Abmelden</a></p>';
    86. }
    87. }
    88.  
    89. ?>
    90.  
    91. <?
    92. function anmelden ($fertig, $user, $password1, $password2, $email)
    93. {
    94. include("connect.php");
    95. if($fertig) {
    96. $abfrage1 = mysql_query("SELECT user FROM login");
    97. while ($row = mysql_fetch_object ($abfrage1)) {
    98.  
    99. if ($row->user==$user) {
    100. echo "Dieser Benutzer existiert schon!";
    101. }
    102.  
    103. }
    104.  
    105. if ($user=="" OR $password1=="" OR $password2=="" or $email=="") {
    106. echo "Sie haben mindestens ein Feld nicht ausgefüllt!";
    107. }
    108.  
    109. else if ($password1!=$password2) {
    110. echo "Ihr Passwort ist ungleich Ihrer Wiederholung!";
    111. }
    112.  
    113. else {
    114. $anfuegen=mysql_query("INSERT INTO login (user, password, email) VALUES ('$user','$password1', '$email')");
    115.  
    116. echo "Erfolgreich angemeldet! Sie können sich nun einloggen:<br>";
    117. @login();
    118. }
    119.  
    120. }
    121.  
    122. else {
    123. echo "<h2>Anmelden</h2>";
    124. echo '<form method="POST" action="'.$PHP_SELF.'?anmelden=yes&fertig=yes">';
    125. ?>
    126.  
    127. <table cellspacing="1" cellpadding="2" border="0">
    128. <tr>
    129. <td><font size="2">Benutzername:</font></td>
    130. <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
    131. </tr>
    132. <tr>
    133. <td><font size="2">Passwort:</font></td>
    134. <td><font size="2"><input type="password" name="password1" value=""></font></td>
    135. </tr>
    136. <tr>
    137. <td><font size="2">Wiederholen:</font></td>
    138. <td><font size="2"><input type="password" name="password2" value=""></font></td>
    139. </tr>
    140. <tr>
    141. <td><font size="2">E-Mail:</font></td>
    142. <td><font size="2"><input type="text" name="email" value="">&nbsp;</font></td>
    143. </tr>
    144. <tr>
    145. <td colspan=2 align=center><input type=submit value=Anmelden></td>
    146. </tr>
    147. </table>
    148. </form>
    149.  
    150. <?
    151. }
    152.  
    153. }
    154.  
    155. ?>
    156.  
    157. <?
    158.  
    159. function forgot ($fertig, $email)
    160. {
    161. include("connect.php");
    162.  
    163. if ($fertig) {
    164. $abfrage=mysql_query("SELECT * FROM login");
    165. while ($row = mysql_fetch_object ($abfrage)) {
    166. if ($email==$row->email) { $ismail="true"; }
    167. }
    168.  
    169. if ($ismail=="true") {
    170. $password=mysql_query("SELECT * FROM login WHERE email = '$email'");
    171. while ($row = mysql_fetch_object ($password)) {
    172.  
    173. $nachricht="Hallo $row->user!nnIhr Passwort ist:nn$row->passwordnnMfGnAdmin";
    174. }
    175.  
    176. mail($email, "Passwort", $nachricht, "From: Administrator");
    177.  
    178. ?>
    179.  
    180. <p>Das Passwort wurde Ihnen erfolgreich an die Adresse <i><? echo $email; ?></i> geschickt!<br>
    181. Rufen Sie Ihre E-Mails ab und loggen Sie sich ein.<br></p>
    182.  
    183. <?
    184. @login();
    185. }
    186.  
    187. else { echo "Ihre angegebene E-Mail Adresse wurde nicht gefunden!";}
    188. }
    189.  
    190. else {
    191. echo "<p><h2>Passwort vergessen</h2><p>";
    192. echo '<p><form method=post action="'.$PHP_SELF.'?forgot=yes&fertig=yes">';
    193.  
    194. ?>
    195.  
    196. <table cellspacing="1" cellpadding="2" border="0">
    197. <tr><td><font size="2">E-Mail Adresse:</font></td><td align=center><input type=text name=email></td></tr>
    198. <tr><td colspan="2" align=center><input type=submit value="Schicken!"></td></tr>
    199. </table></form></p>
    200.  
    201. <?
    202. }
    203.  
    204. }
    205.  
    206. ?>
    207.  
    208. <?
    209.  
    210. function abmelden($fertig, $user, $password)
    211. {
    212. include ("connect.php");
    213. if($fertig) {
    214. $abfrage = mysql_query ("SELECT * FROM login WHERE user = '$user'");
    215. $reihen = mysql_num_rows($abfrage);
    216.  
    217. if ($reihen <= 0) {
    218. echo "Unbekannter Benutzername!";
    219. }
    220.  
    221. else {
    222. while ($row = mysql_fetch_object ($abfrage)) {
    223. if ($row->password==$password) {
    224. $delete = mysql_query ("DELETE FROM login WHERE user = '$user'");
    225. echo "Ihre Daten wurden erfolgreich aus der Datenbank entfernt!";
    226. }
    227.  
    228. else {
    229. echo "Falsches Passwort!";
    230. }
    231. }
    232. }
    233.  
    234. }
    235.  
    236. else {
    237. echo "<p><h2>Abmelden</h2></p>";
    238. echo '<form method="POST" action="'.$PHP_SELF.'?abmelden=yes&fertig=yes">';
    239. ?>
    240.  
    241. <table cellspacing="1" cellpadding="2" border="0">
    242. <tr>
    243. <td><font size="2">Benutzername:</font></td>
    244. <td><font size="2"><input type="text" name="user" value="">&nbsp;</font></td>
    245. </tr>
    246. <tr>
    247. <td><font size="2">Passwort:</font></td>
    248. <td><font size="2"><input type="password" name="password" value=""></font></td>
    249. </tr>
    250. <tr>
    251. <td colspan=2 align=center><input type=submit value=Abmelden></td>
    252. </tr>
    253. </table>
    254. </form>
    255.  
    256. <?
    257. }
    258.  
    259. }
    260.  
    261. ?>
    262.  
    heruntergeladen und mich mal hingesetzt und versucht zu verstehen wie dieses Skript funktioniert.

    Ich habe bei dem Skript erwartet das wenn ich auf "hier" klick, das ich zu dem Bereich "Anmelden" komme. Aber es passierte nichts, egal auf welchen "Link" ich klick.

    ....vielleicht verstehst du jetzt warum ich diesen "Code" gepost habe.
     
    #3      
  4. Guin

    Guin Nicht mehr ganz neu hier

    Dabei seit:
    18.04.2008
    Beiträge:
    186
    Geschlecht:
    männlich
    Ort:
    Lübeck
    Hilfe! bin php Newbie
    AW: Hilfe! bin php Newbie

    Ich möchte dem Autor des Turorials nicht zu nahe treten, aber das ist eher eines der schlechteren Turorials.

    Variablen aus Formularen werden mit GET oder POST übergeben.
    Das funktioniert nur, wenn man "register_globals On" eingestellt hat.
    Im Normalfall ist dieser Schalter aber auf OFF und "das ist auch gut so".

    Also heisst es sauber und ordentlich arbeiten
    Der Unterschied ist deutlich, oder?
    Je nach Formular, muss man halt Get oder Post nutzen.
    Sichtbarer Unterschied zwischen GET und POST:
    GET Variablen werden im Link angezeigt, POST Variabeln nicht.

    Schau mal da rein
    phpbuddy.eu: Login Tutorial
     
    #4      
  5. CIX88

    CIX88 Aktives Mitglied

    Dabei seit:
    06.04.2006
    Beiträge:
    814
    Geschlecht:
    männlich
    Ort:
    GR
    Hilfe! bin php Newbie
    AW: Hilfe! bin php Newbie

    Naja, das Tutorial ist ja auch schon 2 Jahre alt :)
     
    #5      
  6. Guin

    Guin Nicht mehr ganz neu hier

    Dabei seit:
    18.04.2008
    Beiträge:
    186
    Geschlecht:
    männlich
    Ort:
    Lübeck
    Hilfe! bin php Newbie
    AW: Hilfe! bin php Newbie

    Auch vor 2 Jahren war das nicht mehr wirklich aktuell. Aber "damals" gab es sicherlich noch mehr alte Scripte zu finden als heute.
    Zum Glück verschwinden die Altlasten langsam :)
     
    #6      
  7. zerocool78

    zerocool78 Grafikfrischling

    Dabei seit:
    06.03.2008
    Beiträge:
    106
    Geschlecht:
    männlich
    Ort:
    Leverkusen
    Software:
    Photoshop
    Hilfe! bin php Newbie
    AW: Hilfe! bin php Newbie

    Ich Danke dir für deine Hilfestellung und schau mir mal den Link an. Im weitern werde ich mich in die Materie-PHP :D weiter einarbeiten.
    Habe mir die Seite Quakenet/#php Tutorial zum lernen ausgesucht, die das eigentlich gut rüber bringt.
     
    #7      
x
×
×
teststefan