Kezdőoldal » Számítástechnika » Weblapkészítés » Biztonságos-e a profil megteki...

Biztonságos-e a profil megtekintés, illetve a & cserélése más karakterre?

Figyelt kérdés

Üdv

adott egy profil megtekintés, amit mások is tudnak nézni, ha be vannak regisztrálva, először is arra lennék kiváncsi, hogy biztonságos-e ez így, másodszor pedig, hogy a & jelet hogyan lehet lecserélni másra, ? jelre vagy =-re


//



//////INDEX.PHP Rész /////

$queryy = "SELECT * FROM members";


if ($resultt = $mysqli->query($query)) {


while ($roww = $resultt->fetch_array()) {

$id = $roww['id'];


echo "

<li><a href='?action=profile&$id' ";

echo (!isset($_GET['action']) || $_GET['action'] == "profile" ? 'class="active"' : '');

echo ">Profil</a></li>";

} }

//////////Profile.php////////////


<?php


include_once("config.php");

include_once("functions.php");

$username = $_SESSION['username'];


$query = "SELECT * FROM members";


if ($result = $mysqli->query($query)) {


while ($row = $result->fetch_array()) {

$email = $row['email'];

$datum = date("Y.m.d.", $row['REGDATE']);

$avatar= $row['avatar'];

$id = $row['id'];

$user = $row['username'];



if(login_check($mysqli) == true) {

if(isset($_GET["$id"])) {

echo " <h1>Profil ==> $user</h1>

<div id='news'>";


echo "<dl>

<dt>Megjelenő név:</dt>

<dd>$user</dd>

<dt>E-mail:</dt>

<dd>$email</dd>

<dt>Regisztrált:</dt>

<dd>$datum</dd>

<dt>Ip cím:</dt>

<dd>$IP</dd>


</dl></div>";

}


}

}

} else {


header("Location: index.php?action=error");

}


?>



2014. márc. 23. 01:14
 1/2 anonim ***** válasza:

HÁÁÁÁT!...

nem tudom a login_check mit csinál, főleg a $mysqli-vel..

kellene egy ellenőrzés, hogy be van-e lépve, és csak akkor nézhetné meg.


rossz kód.

lekérdezed az összes tagot, while-al végigmész mindegyiken, és azt az egyet mutatod, amelyiket megtekinti. Nem jó!


Először is, csak akkor nézheti meg, ha be van lépve (mert ugye ha bevan, akkor nyilván tag is), és ha be van, csak akkor piszkálod az adatbázist.

Csak annak az egynek az adatait kéred ki adatbázisból, amit meg akar nézni, ott ellenőrizni kell a tag id-ját, (mert mindenki pusztítani akar), és megjeleníted.


A validálást csinálhatod mondjuk így: if(preg_match("/[0-9]+/", $_GET['id']){ nem bánt}else{ vigyázz, támadni akar }

vagy prepared statementtel, a lekérdezésben:

$query = $mysqli->prepare('SELECT * FROM members WHERE id= ?');

$query->bind_param('i', $_GET['id']); //i=integer - számot várunk az első kérdőjel helyére

$query->execute();

...

ha nem jóember akkor pedig 0 sort ad vissza (?vagy false lesz?)

2014. márc. 23. 03:43
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:

miért akarod kicserélni?


$szoveg = 'csereles&hejcihő&';

$szoveg = str_replace=('&', '=', $szoveg); //str_replace( mit, mire, miben);

echo $szoveg; //=> csereles=hejcihő=

2014. márc. 23. 03:47
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!