Just nu i M3-nätverket
Gå till innehåll

Är detta möjligt?


BorO

Rekommendera Poster

Hej!

 

Jag undrar om man hämtar PHP-kod från en tabell i en databas.......om koden kommer att bearbetas.....eller bara skrivas ut?

 

 

Nån som vet?

Länk till kommentar
Dela på andra webbplatser

Jag ser nu att det finns en möjlighet.....Jag är ganska ny inom programmering och vet inte vilka negativa konsekvenser eval() funktionen har.....

 

Varför är de tingenting att rekommendera?

 

 

Länk till kommentar
Dela på andra webbplatser

Säg att det är ett forum du bygger, eller vad som helst där en användare kan stoppa in kod i databasen. Om du då kör eval på det som kommer ur databasen så kan ju den dumma användaren göra i princip vad som helst på din webserver.

 

Ett exempel kan väl vara att öppna filer med hjälp av fopen i PHP, på det sättet kan den dumma användaren se din kod, till exempel ta reda på användarnamn och lösenord till din databas, och sedan skriva kod som raderar allting i databasen...

 

Den dumma användaren kanske får för sig att hämta nån trevlig fil på din server oxå, eller varför inte connecta mot hans egen sajt och inkludera nåt trevligt virus eller liknande i din kod.

 

Det finns en funktion som heter system(), med den kan han göra mycket skojigt på din server...

 

Hur som helst, även om du nu inte låter användare fylla i någon information i din databas så bör du ändå inte göra såhär om nu någon lyckas knäcka din SQL server, då kan ju personen i fråga göra vad han vill på ditt system iaf...

 

Slutsats: Se upp med att använda eval() på sånt du inte har full kontroll över.

 

--

Some say I am crazy..but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Det jag gör nu är lite snoppsystem där man från administrationen ska kunna ändra meny hur man vill ha det.......

 

Är det stor risk att nån knäcker SQl servern och förstår saker för mig? Hur kan framförallt se att jag använder eval() metoden?

 

Länk till kommentar
Dela på andra webbplatser

shoppsystem menar jag........
:)

 

Vet inte riktigt hur du menar att du ska göra så med hjälp av eval.... Är det inte bättre att designa databasen på sådant sätt att menyn i s(n)hoppsystemet är editerbar utan att behöva köra extra kod från databasen?

 

Ge lite mer info om vad du vill man ska kunna göra i menyn så kanske jag kan ge dig en hjälp på vägen!

 

--

Some say I am crazy..but the Voices in my head disagree...

 

Länk till kommentar
Dela på andra webbplatser

Har gjort flera sidor genom åren och alltid har det varit svårt att uppdatera.....Efter varje sida blev jag sjukare och osäkrare när det gäller HTML kod.....Varje snutt kod känns dåligt om jag inte kan ändra på alla sidor sammtidigt.....

Det jag vill göra med hjälp av eval() (försökte redan, gick inte :)) är...Jag har redan en fungerande meny som kan ändras via administrationen, men jag vill att nån loggar in ska dens namn stå ovanför menyn.....Då måste alltså lite kod bearbetas. Typ

if(isset($_SESSION["kund"]))

{

echo $_SESSION["kund"]));

}

Det ska visas bara om nån kund har loggat in......Har alltid haft så förut, men vill slippa ändra kod på alla sidor

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...