Autor Zpráva
litvi
Profil *
Zdravim,

porsim o radu...

Mam udelany takovy maly formular, kde se uzivatel prihlasi a pouze pod heslem, ktere se kontroluje v DB. Na v momente kdy toto probehne v poradku, tak je treba, aby se ulozilo do db aktualni jeho IP a jeho stav "active "= 1 ... Vse jsem si myslel, ze jsem udelal dobre az na to ze se mi stale uklada do db pouze heslo :) .
Prosim o radu. Podle me hned uvidite chybu - ja ji nevidim :( .

<?php
if(isset($_POST['heslo'])){
  require_once 'db.php';
  $ip = $_SERVER['REMOTE_ADDR'];
  $ip_servera = $_SERVER['SERVER_ADDR'];
  $pass = ($_POST['heslo']);
    $query = mysql_query("SELECT * FROM `password` WHERE `Heslo` = '$pass' ") or die (mysql_error());
      $Vysledek = mysql_fetch_array($query);
	   if($Vysledek['Heslo']){
          //echo "<H4>Overeni probehlo v poradku.</H4>\n";
		  $bl="pripoj.php?jeto=ok&$ip&$ip_servera";
          header("location: $bl"); 
		  $active = 1;
		  $active = $_POST['active'];
		  $ip = $_POST['ip'];
		  $sql = "INSERT INTO newip (IP,active) VALUES ('$ip','$active' )";
		  mysql_query($sql);		
		  exit;
        }else{
          // echo "<h4>Sptane zadane heslo</H4>\n";
		  $bl="pripoj.php?chyba=zkus_to_znovu&$ip&$ip_servera";
          header("location: $bl");
		  exit;
        }
    mysql_free_result($query);
}else{
  echo "Zde nic není.";
}
?>

diky,

litvi
tiso
Profil
litvi: zmaž alebo zakomentuj tieto riadky:
$bl="pripoj.php?jeto=ok&$ip&$ip_servera";
header("location: $bl");
litvi
Profil *
to jsem udelal, ale porad to stejne... Jde o to, ze ja potrebuji ukladat do db toto: $sql = "INSERT INTO newip (IP,active) VALUES ('$ip','$active' )"; a ono to tam uklada porad dokola heslo!!! a pritom si myslim, ze to neni mozne.

litvi
tiso
Profil
litvi: „a ono to tam uklada porad dokola heslo!!!
To tento skript určite nerobí.
litvi
Profil *
Ja se nechci hadat, nejsem zadny programator, ale kdyz zakomentuji toto:
//$active = 1;
//$active = $_POST['active'];
//$ip = $_POST['ip'];
//$sql = "INSERT INTO newip (IP,active) VALUES ('$ip','$active' )";
//mysql_query($sql);

Tak to probehne pouze korektne kontrola hesla s db, ale nic se neulozi... Nevim ale proc to uklada do jine tabulky uplne neco jineho.

litvi
tiso
Profil
litvi: „ale nic se neulozi
Lebo sa nemá čo ukladať...

Nevim ale proc to uklada do jine tabulky uplne neco jineho
Lebo:
SELECT * FROM `password` WHERE `Heslo` = '$pass' 


INSERT INTO newip (IP,active) VALUES ('$ip','$active' )
litvi
Profil *
Tomu ted moc nerozumim... Ja v tom prvnim pripade SELECT * FROM `password` WHERE `Heslo` = '$pass' kontroluji pouze zda heslo v tabulce password a ve sloupci Heslo existuje.
V tom druhem uz chci ukladat INSERT INTO newip (IP,active) VALUES ('$ip','$active' ) do tabulky newip - sloupec IP a active ty dve promenne hodnoty??

Kde mam tedy chybu ?

litvi
tiso
Profil
litvi: skús sa začať normálne vyjadrovať, ani hotentót ti nerozumie...
litvi
Profil *
OK .. Zkusim to popsat jeste jednou.

Mam prihlasovaci formular, kde pouze zadavam do jednoho policka heslo. Heslo dostane clovek treba na papirku. To 1 heslo je ulozene v db. Probehne uspesna kontrola hesla a pote potrebuji ulozit aktualni IP adresu ze ktere se uzivatel pripojuje do db a zaroven mu nastavit hodnotu active na 1 a tu take do db ulozit.

To je cele. Ten prvni proces (kontrola hesla) mi funguje, ale ten druhy proces ne.. Ten druhy proces se chova tak, ze uklada heslo do db nikoliv tu IP a active.

tak nevim jestli to chapes...

litvi
tiso
Profil
litvi: „Ten druhy proces se chova tak, ze uklada heslo do db nikoliv tu IP a active.
A ja opäť opakujem, že to skript uvedený v [#1] nerobí... Iba ak... Ukáž sem ako vyzerá ten formulár...
Mastodont
Profil
litvi
Absolutně nechápu, proč tam máš ten header, když si IP předtím zjistíš z $_SERVER['REMOTE_ADDR']. Proč neuložíš rovnou tu první $ip ??
litvi
Profil *
Tak tady je vse co mam.

toto je pripoj.php

<h1>Login </h1>
<form action="login_zpracuj.php" method="post">
<input type="hidden" name="sent" value=""/>
<strong>Prihlaseni do internetu-Zadejte prosim HESLO!!!</strong> <br/>
<input type="password" name="heslo" maxlength="32"/> <strong>Heslo</strong> <br/>
<input type="submit" name="send" value="connect"/>
</form>

----------------------------------------------------------------------------------------
toto je ten login_zpracuj.php

<?php
if(isset($_POST['heslo'])){
require_once 'db.php';
$ip = $_SERVER['REMOTE_ADDR'];
$ip_servera = $_SERVER['SERVER_ADDR'];
$pass = ($_POST['heslo']);
$query = mysql_query("SELECT * FROM `password` WHERE `Heslo` = '$pass' ") or die (mysql_error());
$Vysledek = mysql_fetch_array($query);
if($Vysledek['Heslo']){
//echo "<H4>Overeni probehlo v poradku.</H4>\n";
$bl="pripoj.php?jeto=ok&$ip&$ip_servera";
header("location: $bl");
//$active = 1;
//$active = $_POST['active'];
//$ip = $_POST['ip'];
//$sql = "INSERT INTO newip (IP,active) VALUES ('$ip','$active' )";
//mysql_query($sql);
exit;
}else{
// echo "<h4>Sptane zadane heslo</H4>\n";
$bl="pripoj.php?chyba=zkus_to_znovu&$ip&$ip_servera";
header("location: $bl");
exit;
}
mysql_free_result($query);
}else{
echo "Zde nic není.";
}
?>

--------------------------------

pripojeni k db.

<?php
$spojeni = mysql_connect("localhost","xxxxx","xxxxxx" ) or die ('<b>Critical error!</b><br>Nepodarilo se pripojit k databazi!');
mysql_select_db("xxxx", $spojeni) or die ('Spatne zadana databaze v db.php');

?>
tiso
Profil
<?php 
if(isset($_POST['heslo'])){ 
require_once 'db.php'; 
$ip = $_SERVER['REMOTE_ADDR']; 
$ip_servera = $_SERVER['SERVER_ADDR'];
$pass = ($_POST['heslo']); 
$query = mysql_query("SELECT * FROM `password` WHERE `Heslo` = '$pass' ") or die (mysql_error()); 
$Vysledek = mysql_fetch_array($query); 
if($Vysledek['Heslo']){ 
//echo "<H4>Overeni probehlo v poradku.</H4>\n"; 
//$bl="pripoj.php?jeto=ok&$ip&$ip_servera"; 
//header("location: $bl"); 
$active = 1; 
//$active = $_POST['active']; 
//$ip = $_POST['ip']; 
$sql = "INSERT INTO newip (IP,active) VALUES ('$ip','$active' )"; 
mysql_query($sql); 
exit; 
}else{ 
// echo "<h4>Sptane zadane heslo</H4>\n"; 
$bl="pripoj.php?chyba=zkus_to_znovu&$ip&$ip_servera"; 
header("location: $bl"); 
exit; 
} 
mysql_free_result($query); 
}else{ 
echo "Zde nic není."; 
} 
?>
litvi
Profil *
Dekuji za pomoc - uz mi to uklada jak ma az na maly problemek... Stale to do db uklada to heslo - to by nemelo, to by melo ukladat pouze tu ip a active.

Nevite proc?

Milan
tiso
Profil
litvi: „Dekuji za pomoc
máš za čo.
Stale to do db uklada to heslo
Si si istý?
litvi
Profil *
sorry,
ja si vypisuji jinym scriptem obsah sloupcu :) , takze mi to pokazde to heslo vypise- a to je jasne :)

Dekuji moc,

urcite se jeste tady potkame :)

litvi

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:

0