Autor Zpráva
fatalfanatic
Profil *
Dobrý den, mám zde menší problém,

Na index.php mám login form, který odkazuje na databázi ta se připojí dobře jenže to už začíná ten problém, mezi přihlašovaním se tam objeví php kód,login- chtěl bych aby se zde bud nic neobjevilo nebo aby jak to tam je jen zobrazilo připojení bylo úspěšné. Potom co se to přihlasí do databáze to skočí na stránku tudíž index2.php . Chtěl bych ještě z databáze vyhodit nějaké informace, takže Jméno, které bylo přihlášení (Př: přihlašuji se třeba za david.. tak na stránce index2.php bude napsané Vítej david). Poté potřebuji php kód abych mohl změnit přes databázi i přidavné heslo (Př: stavající heslo je třeba 123 čím bych tedy změnil 123 na heslo123 podle zvolení ve form)

login

<center>
    <form action="login.php" method="post">
    ID: <br>
    <input type="text" name="id" size="50"><br>
    Heslo: <br>
    <input type="password" name="pw" size="50"><br>
    <input type="submit" name="login" value="Login">
</center>
<?php
if(isset($_POST['login']) && $_POST['login'] == "Login")
{
include('config.php');
mysql_select_db('account');
$id = mysql_real_escape_string($_POST['id']);
$pw = mysql_real_escape_string($_POST['pw']);

$sql = "SELECT * from account where login = '$id' and password = PASSWORD('$pw')";
$ergebnis = mysql_query($sql);
$num = mysql_num_rows($ergebnis);
$row = mysql_fetch_object($ergebnis);
if($num > 0)
{
$_SESSION['id'] = $row->login;
$_SESSION['coins'] = $row->coins;
echo "Login Success.
<meta http-equiv=\"refresh\" content=\"1;url=index2.php\">";
}
else
{
echo "You have submitted incorrect data!
<meta http-equiv=\"refresh\" content=\"1;url=index2.php\">";
}
}
?>

mysql
<?php 
    /*
    |-------------------------------------------------------------------
    | Datenbank Connection Details
    |-------------------------------------------------------------------
    */
        $mysql_host     = "25.175.***.100;
        $mysql_user     = "***";
        $mysql_pass     = "12***";
        $mysql_db    = "player";
        $mysql_db1    = "account";
        $mysql_db2    = "common";
        
        mysql_connect($mysql_host, $mysql_user, $mysql_pass) OR
        die("Server je vypnutý.<br /> kontaktujte podporu");    
        ?>

Změna hesla

<h2><center>Zmena hesla</h2>
<table border="0" cellpadding="0" cellspacing="0"><tr><td>
<a href="reg.php"><img title=Registration' src='images/re.png' onmouseover='javascript:this.src="images/re1.png"' onmouseout='javascript:this.src="images/re.png"''/></a><br>
</td></tr></table>
<br>
<?php
    
    if(isset($_POST['change']) && $_POST['change'] == 'Change') {
    
        include('config.php');
            mysql_select_db('account');
            
$user = mysql_real_escape_string($_POST['user']);
$oldpw = mysql_real_escape_string($_POST['oldpw']);
$oldpw2 = mysql_real_escape_string($_POST['oldpw2']);
$newpw = mysql_real_escape_string($_POST['newpw']);
$newpw2 = mysql_real_escape_string($_POST['newpw2']);
$lcold = mysql_real_escape_string($_POST['lcold']);
$lcnew = mysql_real_escape_string($_POST['lcnew']);

    if($oldpw == $oldpw2 && $newpw == $newpw2) {
        
    
        $change = "UPDATE account set password = PASSWORD('" . $newpw . "'), social_id = '" . $lcnew . "' where login = '" . $user . "' and password = PASSWORD('" . $oldpw . "') and social_id = '" . $lcold . "'";
            $result = mysql_query($change);
            
        if($result) {
        echo "<center><br>You have successfully changed your Password!!<br>"; } else { echo "<center><br>Failed to change the password, try again!<br>"; }
        echo '<br>Your New Password Is!:<font color="red"><strong> ', $newpw;        
    } else { echo "<center><br>The passwords don't match!<br>"; }
    
}
?>
</strong></font>
<br>
<br>
<center><font color="white">
    <form action="pw.php" method="post">
                <p style="background-image:url(images/bg.png); height:516px; width:428;  padding:15px;">
<br><br><br><br>
        ID: <br>
        <input type="text" name="user"><br><br>
        Stare heslo: <br>
        <input type="password" name="oldpw"><br><br>
        Stare heslo znovu: <br>
        <input type="password" name="oldpw2"><br><br>
        Nove heslo: <br>
        <input type="password" name="newpw"><br><br>
        Znovu nove heslo: <br>
        <input type="password" name="newpw2"><br><br>
        Stary kod na smazani postavi: <br>
        <input type="text" name="lcold"><br><br>
        Novi kod na smazani postavi: <br>
        <input type="text" name="lcnew"><br><br>
    <input type="submit" name="change" value="Change">
    </form>
</center></p>
<br>
<br>

Ten logout, který se mi nedaří napsat

<?php 
ob_start (); 
session_start (); 
session_unset (); 
session_destroy (); 
header ("Location: index.php"); 
ob_end_flush (); 
?> 

A ty informace přihlašovací jméno apod ... Tuším, že by mohli být nějak takle:

<?
$mysql_host= "25.175.***.100";
$mysql_user= "***";
$mysql_pass= "12****";
$mysql_db= "account";
 "SELECT * account", 
 $login);

 while ($login = mysql_fetch_array($account) ): 
 echo "<p><a href='mysql.php?id=";
 echo $login["account"]; 
 

takže co potřebuji:

1. Přihlasit se do databáze a vypsat přímo uživatele, který je v databázi pod tímto už.jménem a vypsat ho na index2.php
2. Potřebuji se zbavit sekcí mezi index.php/login.php a index2.php vyskakuje mezi nimi nějaký php kód a k tomu ještě jeden login asi na 3 vteřiny, pak skočí na index2.php.
3. Potřebuju zrekonstruovat formulář na změnu hesla opět s připojením do databáze a opět z nějakým ohlašním PŘ: Vaše heslo bylo změněno
4. Potřebuju ještě vytvořit nějaké tlačítko, které by uživatele odhlásilo z databáze opět z ohlášením PŘ: byl jste úspěšně odhlášen

Pokud budete chtít více informací nebo si to přími vyzkoušet stačí napsat, taktéž doufám chápete mě ? Já už po tomhle ne :D

Děkuji za ochotu.
anonymní
Profil *
fatalfanatic:

$mysql_db= "account";  
"SELECT * account",   
$login);

nechce se mi to procházet celé, ale tímto chtěl básník říci co?
fatalfanatic
Profil *
anonymní:
Zdravím anonymní, no abych lépe řekl databázi moc nevedu dobře, nebo spíš s ní neumím pracovat, ale měla by se to připojit do databáze a přejít do account čili mysql_db a account, následně by to asi pokračovalo do player a tam vytáhnout toho uživatele jenže problém je v tom, že to vytáhne bud nikoho nebo všechny, ale já chci přesně toho kdo se přihláší takže se přihláší david tam by tam měl být vítej david, takže mám bud celý komplet špatný php kód nebo něco dělám špatně.



<?php
        $mysql_host     = "25.175.***.100;
        $mysql_user     = "***";
        $mysql_pass     = "12***";
        $mysql_db    = "player";
        $mysql_db1    = "account";
        $mysql_db2    = "common";
        $mysql_connect($mysql_player)
        $vysledek = $login = mysql_fetch_array($account);
        $data = mysql_fetch_array($payer);
            if(!empty($account)
            echo "Vítej: " . $data['player']         
        ?>
Kubo2_
Profil *
fatalfanatic:
takže mám bud celý komplet špatný php kód nebo něco dělám špatně.
Máš celý komplet špatný php kód. Na konci druhého riadku ti chýba úvodzovka ".
okolojsoucí
Profil
fatalfanatic:
$mysql_connect($mysql_player)
Co to má dělat? To má být PHP?
fatalfanatic
Profil *
okolojsoucí:
„$mysql_connect($mysql_player)“
Co to má dělat? To má být PHP?

Jak říkám mělo by se vše připojit do databáze vytáhnout přihlašovací údaje toho, který se přihlásí a vypsat je na tu danou stránku.
Připojí se do databáze mysql_player najde login a tam account
$vysledek = $login = mysql_fetch_array($account);
a vypíše
$data = mysql_fetch_array($player);
            if(!empty($account)
            echo "Vítej: " . $data['player']  

Tak nějak by to mělo být, pokud ne, tak to bude celé špatne jak psal kubo2_ .

Co kdybychom přešly od mých chyb do sekce řešit nebo vyrešit. Asi to bude špatně, ale takle se to nikdy snad nevyřeší můžu napsat mraky kódů ale výsledek bude stejný.
anonymní
Profil *
fatalfanatic:
tvůj kód je celý špatně. A v této podobě nemůže vytáhnout ani jiného uživatele, ani všechny.

Co kdybychom přešly od mých chyb do sekce řešit nebo vyrešit.
hm, fajn přístup. Mám něco, o čem nemám ani tucha, píšu, že to funguje špatně, přestože to nefunguje vůbec (ani nemůže, mraky syntaktických chyb, nepřipojení k DB, ...).

Zkrátka nemám nic, přestože jsem dělal, že něco mám, a udělejte to všechno za mě...

Docela by mě zajímal ten kód, o kterém píšeš, že ti nějaké jméno vypisuje. Ty zde uvedené to rozhodně nejsou.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: