Jetzt ist ein neues Problem aufgetreten: [PHP] Hilfe - In Datei schreiben
Beiträge von mrmonat
-
-
Ich habe folgendes Script für ein User Control Panel erstellt:
PHP
Alles anzeigen<?php include("connect.php"); echo " <html> <head> <title>MrMonat Control Panel</title> <style type='text/css' rel='stylesheet'> <style type='text/css'> body{ background-color: #004669; color: #aaa; font-family : Arial, Verdana, Helvetica, sans-serif; font-size: 14px; } #main{ background-color: #666; width: 970px; margin-left: auto; margin-right: auto; padding: 15px; margin-top: 0px; text-align: left; height: 600px; text-align: center; } #text{ background-color: #282828; width: 800px; margin-left: auto; margin-right: auto; padding: 15px; height: 550px; margin-top: 13px; text-align: left; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 14px; color: #aaa; } a.backlink:link{ text-decoration: none; color: #aaa; } a.backlink:visited{ text-decoration: none; color: #aaa; } a.backlink:hover{ font-weight: bold; color: #ddd; } </style> </head> <body bgcolor='#004669' link='#aaaaaa' vlink='#aaaaaa'> <center><img width='1000px' src='http://mrmonat.mr.funpic.de/upload/wcf/images/Mein Style/headerneu.jpg'></img> <div id='main'><div id='text'> Eingeloggt als: <b>$user</b><p> <form action='pwchange.php' method='POST'> Aktuelles Passwort:<br> <input type='password' name='oldpasswort' style='background-color:#aaa;'><p> Neues Passwort:<br> <input type='password' name='neupasswort1' style='background-color:#aaa;'><p> Neues Passwort wiederholen:<br> <input type='password' name='neupasswort2' style='background-color:#aaa;'><p> <input type='submit' name='submit' value='Passwort ändern'> </form>"; $oldpasswort = $_POST['oldpasswort']; $neupasswort1 = $_POST['neupasswort1']; $neupasswort2 = $_POST['neupasswort2']; $submit = $_POST['submit']; if($submit) { if($oldpasswort==$passwortR) { if($neupasswort1==$neupasswort2&&$neupasswort1!='') { } else { echo "Die Passwörter stimmen nicht überein"; } } else { echo "Falsches Passwort"; } } echo "<p><a href='profil.php' class='backlink'>Profil anzeigen</a><br><a href='logout.php' class='backlink'>Ausloggen</a> </div><font face=' Arial, Verdana, Helvetica, sans-serif;' color='#aaaaaa' >© Copyright 2010 by MrMonat</div></center> </body> </html> "; ?>
Das ist die Datei, die das Passwort ändern soll. Aber wie? Ich habe keine Ahnung wie ich machen soll, das das Script das neue Passwort genau in der txt datei dahin schreibt wo das alte steht, und das alte überschreibt.
Weitere Fakten:
meine index datei sieht so aus:PHP
Alles anzeigen<?php session_start(); $name = $_POST['name']; $passwort = $_POST['passwort']; $submit = $_POST['submit']; echo " <html> <head> <title>MrMonat Control Panel</title> <style type='text/css' rel='stylesheet'> <style type='text/css'> body{ background-color: #004669; color: #aaa; font-family : Arial, Verdana, Helvetica, sans-serif; font-size: 14px; } #main{ background-color: #666; width: 970px; margin-left: auto; margin-right: auto; padding: 15px; margin-top: 0px; text-align: left; height: 600px; text-align: center; } #text{ background-color: #282828; width: 800px; margin-left: auto; margin-right: auto; padding: 15px; height: 550px; margin-top: 13px; text-align: left; font-family: Arial, Verdana, Helvetica, sans-serif; font-size: 14px; color: #aaa; } a.backlink:hover{ font-weight: bold; color: #ddd; } a.backlink:link,a.backlink:visited{ text-decoration: none; } </style> </head> <body bgcolor='#004669'> <center><img width='1000px' src='http://mrmonat.mr.funpic.de/upload/wcf/images/Mein Style/headerneu.jpg'></img> <div id='main'><div id='text'> <form action='index.php' method='POST'> Username:<br> <input type='text' name='name' style='background-color: #aaa;'><p> Passwort:<br> <input type='password' name='passwort' style='background-color: #aaa;'><p> <input type='submit' name='submit' value='Login' style='background-color: #aaa;'> </form> "; if($submit) { $file = "C:/San Andreas/Scriptfiles/Accounts/$name.txt"; $handle = fopen($file,"r+") or die('Datei nicht gefunden'); $i = 1; while(!feof($handle)) { $line[$i] = fgets($handle,1000); $i++; } list($a, $Money) = split("=", $line[2]); list($a, $Respekt) = split("=", $line[19]); list($a, $Level) = split("=",$line[18]); list($a, $Frakt) = split("=",$line[14]); list($a, $Rank) = split("=",$line[15]); list($a, $passwortR) = split("=",$line[1]); list($a, $Job) = split("=",$line[16]); if($Frakt==1) { $Frakt="LSPD"; } if($Frakt==0) { $Frakt="Zivilist"; } if($Frakt==2) { $Frakt="Mafia"; } if($Frakt==3) { $Frakt="SA:TT"; } if($Frakt==4) { $Frakt="Fallschirmspringa"; } if($Frakt==5) { $Frakt="Grove Street"; } if($Job==1) { $Job="Drogenhändler"; } if($Job==2) { $Job="Abschlepperfahrer"; } if($Job==3) { $Job="Detektiv"; } $passwortR = substr($passwortR,0,-2); if($passwortR == $passwort) { $_SESSION['passwortR']=$passwortR; $_SESSION['user']=$name; $_SESSION['logged']=1; $_SESSION['Money']=$Money; $_SESSION['Respekt']=$Respekt; $_SESSION['Level']=$Level; $_SESSION['Frakt']=$Frakt; $_SESSION['Rank']=$Rank; $_SESSION['Job']=$Job; $_SESSION['file']=$file; //Header("Location: userpage.php"); echo '<meta http-equiv="refresh" content="0; URL=userpage.php">'; } else { $_SESSION['logged']=0; echo "Falsches Passwort"; } } echo "</div><font face=' Arial, Verdana, Helvetica, sans-serif;' color='#aaaaaa' >© Copyright 2010 by MrMonat</div></center> </body> </html> "; ?>
Die Userdatei MrMonat.txt:
-
-
nein es ist funpic.de
-
PHP
Alles anzeigen<form action='index.php' method='POST'> Username:<br> <input type='text' name='name'><p> Passwort:<br> <input type='password' name='passwort'><p> <input type='submit' name='submit' value='Login'> </form> <?php $name = $_POST['name']; $passwort = $_POST['passwort']; $submit = $_POST['submit']; if($submit) { $file = "$name.ini"; $handle = fopen($file,"r") or die('Datei nicht gefunden'); $i = 1; while(!feof($handle)) { $line[$i] = fgets($handle,1000); $i++; } list($a, $Money) = split("=", $line[2]); list($a, $Respekt) = split("=", $line[19]); list($a, $Level) = split("=",$line[18]); list($a, $Frakt) = split("=",$line[14]); list($a, $passwortR) = split("=",$line[1]); if($Frakt==1) { $Frakt="LSPD"; } if($Frakt==0) { $Frakt="Zivilist"; } if($Frakt==2) { $Frakt="Mafia"; } if($Frakt==3) { $Frakt="SA:TT"; } if($Frakt==4) { $Frakt="Fallschirmspringa"; } $passwortR = substr($passwortR,0,-2); if($passwortR == $passwort) { echo "Name: $name Geld: $Money Level: $Level Respekt: $Respekt Fraktion: $Frakt"; } else { echo "Falsches Passwort<p>"; } echo "<br>$passwort<br>$passwortR"; } ?>
Tja meine und eure Mühen waren umsonst: mein webhoster unterstützt externe links von dateien nicht. -
-
-
ja es ist klartext
aber lieder es funktioniert immer noch nicht.
So ist jetzt mein Script:
PHP
Alles anzeigen<form action='index.php' method='POST'> Username:<br> <input type='text' name='name'><p> Passwort:<br> <input type='password' name='passwort'><p> <input type='submit' name='submit' value='Login'> </form> <?php $name = $_POST['name']; $passwort = $_POST['passwort']; $submit = $_POST['submit']; $passwort .= " "; if($submit) { $file = "C:/San Andreas/scriptfiles/Accounts/$name.ini"; $handle = fopen($file,"r") or die('Datei nicht gefunden'); $i = 1; while(!feof($handle)) { $line[$i] = fgets($handle,1000); $i++; } list($a, $Money) = split("=", $line[2]); list($a, $Respekt) = split("=", $line[19]); list($a, $Level) = split("=",$line[18]); list($a, $Frakt) = split("=",$line[14]); list($a, $passwortR) = split("=",$line[1]); if($Frakt==1) { $Frakt="LSPD"; } if($Frakt==0) { $Frakt="Zivilist"; } if($Frakt==2) { $Frakt="Mafia"; } if($Frakt==3) { $Frakt="SA:TT"; } if($Frakt==4) { $Frakt="Fallschirmspringa"; } if($passwort==$passwortR) { echo "Name: $name Geld: $Money Level: $Level Respekt: $Respekt Fraktion: $Frakt"; } else { echo "Falsches Passwort<p>"; } echo "[$passwort][$passwortR]"; } ?>
-
funktioniert doch nocht nicht ich habe jetzt als code:
PHP
Alles anzeigen<form action='index.php' method='POST'> Username:<br> <input type='text' name='name'><p> Passwort:<br> <input type='password' name='passwort'><p> <input type='submit' name='submit' value='Login'> </form> <?php $name = $_POST['name']; $passwort = $_POST['passwort']; $submit = $_POST['submit']; if($submit) { $file = "C:/San Andreas/scriptfiles/Accounts/$name.ini"; $handle = fopen($file,"r") or die('Datei nicht gefunden'); $i = 1; while(!feof($handle)) { $line[$i] = fgets($handle,1000); $i++; } list($a, $Money) = split("=", $line[2]); list($a, $Respekt) = split("=", $line[19]); list($a, $Level) = split("=",$line[18]); list($a, $Frakt) = split("=",$line[14]); list($a, $passwortR) = split("=",$line[1]); if($Frakt==1) { $Frakt="LSPD"; } if($Frakt==0) { $Frakt="Zivilist"; } if($Frakt==2) { $Frakt="Mafia"; } if($Frakt==3) { $Frakt="SA:TT"; } if($Frakt==4) { $Frakt="Fallschirmspringa"; } $passwortRR = substr($passwortR,0,-1); if($passwort==$passwortRR) { echo "Name: $name Geld: $Money Level: $Level Respekt: $Respekt Fraktion: $Frakt"; } else { echo "Falsches Passwort<p>"; } echo "[$passwort][$passwortRR]"; } ?>
-
ja genau. Ich weiß nur nicht wie ich das ändern kann.
-
Hallo Leute, ich habe folgendes problem:
ich habe in meiner php datei folgende zeien code:PHP
Alles anzeigen<form action='index.php' method='POST'> Username:<br> <input type='text' name='name'><p> Passwort:<br> <input type='password' name='passwort'><p> <input type='submit' name='submit' value='Login'> </form> <?php $name = $_POST['name']; $passwort = $_POST['passwort']; $submit = $_POST['submit']; if($submit) { $file = "C:/San Andreas/scriptfiles/Accounts/$name.ini"; $handle = fopen($file,"r") or die('Datei nicht gefunden'); $i = 1; while(!feof($handle)) { $line[$i] = fgets($handle,1000); $i++; } list($a, $Money) = split("=", $line[2]); list($a, $Respekt) = split("=", $line[19]); list($a, $Level) = split("=",$line[18]); list($a, $Frakt) = split("=",$line[14]); list($a, $passwortR) = split("=",$line[1]); if($Frakt==1) { $Frakt="LSPD"; } if($Frakt==0) { $Frakt="Zivilist"; } if($Frakt==2) { $Frakt="Mafia"; } if($Frakt==3) { $Frakt="SA:TT"; } if($Frakt==4) { $Frakt="Fallschirmspringa"; } if($passwort==$passwortR) { echo "Name: $name Geld: $Money Level: $Level Respekt: $Respekt Fraktion: $Frakt"; } else { echo "Falsches Passwort<p>"; } echo "[$passwort] [$passwortR]"; } ?>
Das problem ist nur, das wenn ich dann auf Login drücke, egal ob das Passwort richtig oder Falsch ist kommt Falsches Passwort. Es liegt daran, das beim auslesen aus der .ini ein leerzeichen hinter das eigendliche passwort gesetzt wird. Wie bekomme ich es hin das es trotzdem funktioniert bzw das Leerzeichen weg ist?
MFG MrMonat
-
Gutes Tutorial! Das gleiche Prinzip kann mann übrigends auch für Jail benutzen!
-
gutes tutorial 10/10
-
Recht gutes Tutorial. 8/10. Übrigends: Weise Enter/exit kegel haben die pickupid 1559
-
10/10 gut gemacht! Hab's gleich für meine abschlepper verwendet. Funktioniert einwandfrei!
-
Versuch mal bei onplayerspawn:
if(Abfrage welche Fraktion){
SetPlayerSkin(playerid,skinid);
} -
ok danke jetzt funktionierts
-
habs geändert
-
Also, in diesem (und meinem ersten Tutorial) möchte ich euch erklären, wie man Sounds abspielen kann.
Als erstes brauchen wir mal ein "Event" oder eine "Aktion" nachder der Ton/Sound überhaupt abgespielt werden soll.
Ich nehme jetzt dafür mal einen einfachen Befehl: /musicplay
Der Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/musicplay",cmdtext,true)==0) //Befehl der geschrieben werden muss
{
PlayerPlaySound(playerid,1062,0.0,0.0,0.0); //Sound abspielen
return 1;
}return 1;
}So lautet der Befehl:
PlayerPlaySound(playerid,soundid,X,Y,Z)playerid = sollte klar sein, die id von dem Spieler der den Befehl eingibt
soundid = die id des Sounds der abgespielt werden soll. Liste mit Sounds: http://weedarr.wikidot.com/sounds
X,Y,Z = Koordinaten an denen der Sound abgespielt werden soll (um sie überall abzuspielen, verwendet man die Koordinaten: 0.0,0.0,0.0)Ich hoffe das Tutorial hat geholfen (den Anfängern)
-
Bei mir kommen Folgende Error:
CodeC:\San Andreas\gamemodes\test.pwn(354) : error 017: undefined symbol "cmd" C:\San Andreas\gamemodes\test.pwn(356) : error 017: undefined symbol "strtok" C:\San Andreas\gamemodes\test.pwn(356) : error 033: array must be indexed (variable "tmp")
MEIN CODE:
Codenew tmp[128]; if(!strcmp(cmd, "/skin", true)) { tmp = strtok(cmdtext,idx); if(!tmp[0])return SendClientMessage(playerid,COLOR_BRIGHTRED,"Verwendung : /skin [Skinid]"); SetPlayerSkin(playerid,strval(tmp)); return 1; }
Was mache ich falsch?