PHP.EE FOORUM   
Nimi:   Pass:   Mäleta mind! 
   Teemad | php.ee esilehele | registreeri | Märgi kõik teemad loetuks | #php.ee Skype vestlus | RSS
UUS TEEMA  OTSI  Lehekülgi: 1
Väga vigane kood ainult , mis viga on?
Postitaja: Eiteakoodi 2010-07-23 18:01:45
Tere õhtust! mul bännimise kood mis kontrollib kas sellise ip-l bänn kui pole siis echo ""; aga midagi on valesti ise hetkel kontrollida ei saa aga... üteldakse , et vigane. kood ise:

PHP kood:
 
<!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">
<
html>
<?
include (
"Mysqliandmed.php");
include (
"cookie.php");
$ip=$_SERVER['REMOTE_ADDR'];
$andmed mysql_query("SELECT * FROM kasutajad WHERE '$ip'=ip") or die(mysql_error());
$row1 =  mysql_fetch_assoc($andmed);
if(
$row1[ip]=="81.21.243.34") {
echo 
"<font color=red>
Teie kasutaja on bännitud kuna $row[BannimisePohjus].<br>Teil on bänn peal veel $row[BanniAeg] päeva.
</font>"
;
}
else {
echo 
"";
}
?>

Päikest :H
RE: Väga vigane kood ainult , mis viga on?
Postitaja: EagerFish 2010-07-23 19:21:31
Tegin väikse kiire peast paranduse. Võimalik, et süntaxi vigasi sees. Peaks parema tulemuse andma. Enne oli sul andmebaasi SELECT päringu WHERE osa valesti vormistatud. Võrreldavad olid vales järjekorras.


PHP kood:
 
include ("Mysqliandmed.php");
include (
"cookie.php");

$ip $_SERVER['REMOTE_ADDR'];
$andmed mysql_query("SELECT * FROM kasutajad WHERE ip = '" mysql_real_escape_string$ip ). "'") or die(mysql_error());


if( 
mysql_numrows$andmed ) ){
    
    
$row1 =  mysql_fetch_assoc$andmed );
    
    if(isset( 
$row1['ip'] ) && $row1['ip'] == "81.21.243.34" ) {
        echo 
"
            <font color=red>
            Teie kasutaja on bännitud kuna " 
$row[BannimisePohjus] . ".<br>Teil on bänn peal veel " $row[BanniAeg] . " päeva.
            </font>
        "
;
    }
    
}


Muusas, miks see IP siin koodis olema peab? Pane andmebaasi üks väli juurde nende tesite banni väljadedele mis ütleb kas inimene on bannitud või mitte, siis pole vaja koodis neid IP'si vaja vahele trükkida igakord kui vaja.

Viimati muudetud: 23-07-2010 19:24:22
Muutja: EagerFish
Põhjus:

RE: Väga vigane kood ainult , mis viga on?
Postitaja: - 2010-07-23 21:34:24
Väga kiirelt pilku üle libistades hakkab silma:
$row[BannimisePohjus] . ".<br>Teil on bänn peal veel " . $row[BanniAeg]
$row['BannimisePohjus'] . ".<br>Teil on bänn peal veel " . $row['BanniAeg']
RE: Väga vigane kood ainult , mis viga on?
Postitaja: - 2010-07-23 21:35:32
Ja lisaks: kust tuleb muutuja $row - see peaks $row1 olema?
RE: Väga vigane kood ainult , mis viga on?
Postitaja: Eiteakoodi 2010-07-25 15:49:31
Mul sellepärast see kood:

PHP kood:
 
include ("Mysqliandmed.php");
include (
"cookie.php");

$ip $_SERVER['REMOTE_ADDR'];
$andmed mysql_query("SELECT * FROM kasutajad WHERE ip = '" mysql_real_escape_string$ip ). "'") or die(mysql_error());


if( 
mysql_numrows$andmed ) ){
    
    
$row1 =  mysql_fetch_assoc$andmed );
    
    if(isset( 
$row1['ip'] ) && $row1['ip'] == "81.21.243.34" ) {
        echo 
"
            <font color=red>
            Teie kasutaja on bännitud kuna " 
$row[BannimisePohjus] . ".<br>Teil on bänn peal veel " $row[BanniAeg] . " päeva.
            </font>
        "
;
    }
    
}

Kuna vaja on vaadata kas keegi on bännitud , eks siis mõtlesin koodi natukene teist moodi. , et vaja oleks , saada kätte inimese ip siis võrldeb ta seda mysqlis oleva mysqliga , et vaatab mis kasutajanimi. saab teada kasutajanime ja uurib selle kaudu kas Bannitud=Jah . kui on jah siis annab ta selle echo "teie kasutaja on bännitud....."; aga see kood mis te praegu andsite töötab ka aga seal see
if(isset( $row1['ip'] ) && $row1['ip'] == "81.21.243.34" ) {
}
see kuidagi võimalik nii ka teha , et 81.21.243.34,11.11.11.11, 25.15.63.35 et mitu ip-d?
RE: Väga vigane kood ainult , mis viga on?
Postitaja: assamalla 2010-07-25 18:43:32
TSITEERITUD:
aga see kood mis te praegu andsite töötab ka aga seal see
if(isset( $row1['ip'] ) && $row1['ip'] == "81.21.243.34" ) {
}
see kuidagi võimalik nii ka teha , et 81.21.243.34,11.11.11.11, 25.15.63.35 et mitu ip-d?



if(isset( $row1['ip'] ) &&
($row1['ip'] == "81.21.243.34"
|| $row1['ip'] == "11.11.11.11"
|| $row1['ip'] == "25.15.63.35"){
}
RE: Väga vigane kood ainult , mis viga on?
Postitaja: assamalla 2010-07-25 18:45:41
Parandus:


if(isset( $row1['ip'] ) &&
($row1['ip'] == "81.21.243.34"
|| $row1['ip'] == "11.11.11.11"
|| $row1['ip'] == "25.15.63.35")){
}

Leheküljed: 1

©2002-2010 Martin Rebane & PHP.ee kaasautorid
  0.484085083008