Skoči na vsebino

Forum ne deluje več - obiščite nas na racunalniske-novice.com




Slika

Vse o PHPju


Odgovorov v temi: 1931

#641 brane_new

brane_new

    Poročevalec

  • Members
  • 574 objav

Objavljeno 12 marec 2006 - 18:09

Tole je klasičen primer SQL injectiona, ki dokazuje, da je treba pri vsakem podatku, ki izvira od uporabnika poskrbeti, da ne vsebuje nobenih znakov, ki bi lahko poškodovali poizvedbo oz. da se te znake onemogoči (največkrat z backslashanjem).


zdele me je pa strah ratalo.
torej ko nekdo vpisuje geslo in pass lahko, iz žlehtnobe, doda še svojo kode. in je vsega konec.?!
na pomoč. seveda sem eno skripto dobil na www. kako tole spremeniti (je kot vzorec, ki ga razumem):
<?php
$polje1 = $_GET['polje1'];
$polje2 = $_GET['polje2'];

mysql_query("SELECT * FROM tabela WHERE polje1 = '$polje1' AND polje2 = '$polje2'");
?>

da ne bo kaj preveč škode.

#642 bancek

bancek

    Pomagač

  • Members
  • 450 objav
  • Interesi:Računalništvo, Linux, PHP

Objavljeno 12 marec 2006 - 18:44

rgolob, "or die();" nadomesti z or "die(mysql_error());"

#643 bancek

bancek

    Pomagač

  • Members
  • 450 objav
  • Interesi:Računalništvo, Linux, PHP

Objavljeno 12 marec 2006 - 18:47

brane_new, spremeni tako:

$polje1 = mysql_real_escape_string($_GET['polje1']);

$polje2 = mysql_real_escape_string($_GET['polje2']);


#644 publikum

publikum

    Velemojster

  • Members
  • 5.974 objav
  • Kraj:Deep in code...
  • Interesi:Linux, PHP, C++, C#, .NET, ...

Objavljeno 12 marec 2006 - 18:51

rgolob, raje naredi v bazi tako, da ima stolpec number UNIQUE ID, pa ti ni treba SELECT stavka delati...

#645 mlavta1

mlavta1

    Iznajdljivec

  • Members
  • 787 objav
  • Kraj:Poljane-sredisce vesolja

Objavljeno 12 marec 2006 - 19:17

Mah, meni ne uspe select stavka narest.
Tukaj imam:
http://86.61.72.232/voscila1.gif -tabela voscila_slike
http://86.61.72.232/voscila2.gif -tabela voscila
Zdaj pa bi rad da prikaže iz tabele "voscila" sliko.
Hvala

#646 MihaSkipster

MihaSkipster

    Govorec

  • Members
  • 2.087 objav
  • Kraj:SGC
  • Interesi:Splet, programiranje, vse kaj ma zveze z kompjuteri :D

Objavljeno 12 marec 2006 - 19:22

Mislim da gre to z JOIN-i al kaj je to.. sam ne poznam tega

#647 publikum

publikum

    Velemojster

  • Members
  • 5.974 objav
  • Kraj:Deep in code...
  • Interesi:Linux, PHP, C++, C#, .NET, ...

Objavljeno 12 marec 2006 - 20:21

Kakšna je pa relacija? :shock:

#648 mlavta1

mlavta1

    Iznajdljivec

  • Members
  • 787 objav
  • Kraj:Poljane-sredisce vesolja

Objavljeno 12 marec 2006 - 20:35

relacija? :)

#649 rgolob

rgolob

    Vajenec

  • Members
  • 304 objav

Objavljeno 12 marec 2006 - 23:14

rgolob, raje naredi v bazi tako, da ima stolpec number UNIQUE ID, pa ti ni treba SELECT stavka delati...


Sem rešu! Težava je bla v tem da sem imel stolpec number kot "primary key" mysql_error() mi je javu napako Duplicate entery for key '1'

Hvala!

#650 MAC.H

MAC.H

    nOObie

  • Members
  • 19 objav

Objavljeno 13 marec 2006 - 08:31

l33frenk!

Najprej bi bilo fino, da imaš svojo spletno stran ali pa vsaj strežnik za spletno stran. Potem moraš preveriti, če ta strežnik podpira php ukaze. Se pravi: kreiraš novo spletno stran in vanjo napišeš

<?php
echo ("To je PHP izpis.");
?>

Če se ti potem na spletni strani pokaže le To je PHP izpis., potem php deluje!

#651 bujes

bujes

    Poročevalec

  • Members
  • 505 objav
  • Kraj:Vrhnika

Objavljeno 13 marec 2006 - 16:19

Imam tabelo, ki ima več polj. Prvo polje je ID, zanima pa me, kako narediti, da mi bo delovalo to, kar sem nekje videl:

<?
echo $naslov['1']//če ima vrstica ID 1, potem izpiše podatek iz polja naslov

?>

#652 publikum

publikum

    Velemojster

  • Members
  • 5.974 objav
  • Kraj:Deep in code...
  • Interesi:Linux, PHP, C++, C#, .NET, ...

Objavljeno 13 marec 2006 - 16:39

bujes, tako enostavno pa ne gre :)

<?php

// mysql_connect & stuff



$result = mysql_query("SELECT * FROM tabela WHERE id = '1' LIMIT 1");

$row = mysql_fetch_assoc($result);



echo $row['id'];

?>


#653 Pimqek

Pimqek

    Velemojster

  • Members
  • 6.937 objav
  • Kraj:Mala Zimica

Objavljeno 13 marec 2006 - 17:53

publikum, se mi zdi, da je mislil bolj na to:
...

$result = mysql_query("SELECT naslov FROM tabela ORDER BY id DESC");

...


#654 bancek

bancek

    Pomagač

  • Members
  • 450 objav
  • Interesi:Računalništvo, Linux, PHP

Objavljeno 13 marec 2006 - 18:14

bujes, mogoče bi to lahko naredil s funkcijo.
<?

function naslov($ID){

$result = mysql_query("SELECT * FROM tabela WHERE id = '" . intval($ID) . "' LIMIT 1");

$row = mysql_fetch_assoc($result);

return $row['naslov'];

}

echo naslov('1');



?>
Mislim, da bi nekaj takega delovalo.

// Edit: malo varnostnih popravkov :ok:

#655 Mačoslav

Mačoslav

    Vajenec

  • Members
  • 253 objav
  • Kraj:Ljubljana
  • Interesi:računalniško vodeno vzdrževanje objektov

Objavljeno 14 marec 2006 - 07:47

Vprašanje: ali je možno prenesti (prepisati, prekopirati..) določeno temo z enega phpBB kjer sem uporabnik, na drugega, kjer sem admin?
Poskusil sem ustvariti novo temo videza na običajni predlogi subSilver, pa mi izgled ne potegne drugače :nene:

#656 rgolob

rgolob

    Vajenec

  • Members
  • 304 objav

Objavljeno 14 marec 2006 - 09:06

Če nimaš admin dostopa do tega foruma (kjer si samo uporabnik) da bi naredu bavckup baze pol nimaš kej!

Preostane ti le copy/paste :ok:

#657 Mačoslav

Mačoslav

    Vajenec

  • Members
  • 253 objav
  • Kraj:Ljubljana
  • Interesi:računalniško vodeno vzdrževanje objektov

Objavljeno 14 marec 2006 - 09:36

Se mi je zdelo :joj:
NAJlepša hvala!

#658 mlavta1

mlavta1

    Iznajdljivec

  • Members
  • 787 objav
  • Kraj:Poljane-sredisce vesolja

Objavljeno 14 marec 2006 - 15:30

kako dodaš v funkcijo mail ("lavtar@gmail.com",...)
Več mailov. Se pravi da ti pošlje na več mailov.
Lp

#659 MihaSkipster

MihaSkipster

    Govorec

  • Members
  • 2.087 objav
  • Kraj:SGC
  • Interesi:Splet, programiranje, vse kaj ma zveze z kompjuteri :D

Objavljeno 14 marec 2006 - 15:48

simple... prvo morš met emaile npr v mysql_database..

$query = mysql_query("SELECT * FROM mails");

while($mail = mysql_fetch_assoc($query)){

mail($mail['naslov'],$mail['zadeva'],$mail['besedilo']);

}

Tak za primer.. In mail funkcija se bo izvajala dokler so row-i v bazi!

#660 mlavta1

mlavta1

    Iznajdljivec

  • Members
  • 787 objav
  • Kraj:Poljane-sredisce vesolja

Objavljeno 14 marec 2006 - 15:56

Kaj pa če jih hočeš enostavno napisati mejle kamor naj pošlje? lavtar@gmail.com, miha@gmail.com,...
Hvala



Dodaj odgovor



  


1 član(ov) bere to temo

0 članov, 1 gostov, 0 anonimnih uporabnikov