Gå til innhold

Lagre PHP-script i MySQL?


Anbefalte innlegg

Hei!

 

Har laget rammeverket for min hjemmeside i PHP (ved bruk av includes osv.), men ønsker at alt innholdet skal lagres i MySQL. (Da vil det også bli søkbart osv.)

 

Innholdet (tekstlig) er jo greit nok å lagre i MySQL, men hva med PHP-script? Lagres disse i MySQL vil de jo bare bli tolket som tekst, og man får scriptet skrevet ut istedenfor at det blir eksekvert.

 

Vet at man kan bruke PHP-funksjonen eval(), men synes ikke dette blir veldig elegant. Andre forslag?

Lenke til kommentar
Videoannonse
Annonse

Tipper dette er feil del av forumet, du fikla sikkert i nesa når dem skilta til PHP-delen, og dermed kjørte litt feil.. :)

 

Annen ting;

Man kan søke gjennom sidene selv om man ikke bruker mySQL, det finnes PHP-søkescript..

Lenke til kommentar

-Feilpostet!

 

PHP har ingenting med Web-design, HTML og CSS å gjøre! Se deg godt om rundt omkring på forumet før du poster, så slipper dette og skje en gang til.

 

Flyttes til PHP forumet! ;)

Lenke til kommentar

<?php
$tittel = "- Hovedsiden";
ini_set('arg_separator.output', '&');
session_start();
include ('banner.php');
include('classes.php');
$sql = new sql();
 $sql->db();
$q = $sql->query("SELECT * FROM hovedside");
while($rad = $sql->fetch($q)) {
 echo $rad['index'];
   }
   if  ($_SESSION['username'] ) {
 if (!$_GET['sak']) {
           $q = $sql->query("SELECT * FROM hovedside");
       	while($rad = $sql->fetch($q)) {
       	$tekst = str_replace("<br />","",$rad['index']);
   echo '<hr>
   <form action="index.php?side=hovedside&sak=rediger" method=post>
   Rediger hovedsiden<BR>
   <textarea name="index" rows="10" cols="80">'.$tekst.'</textarea><BR><BR>
   <input type="submit" name="rediger" value="Rediger!">
   </FORM><br />';
           }
   	} elseif ($_GET['sak'] = rediger) {
         $index=nl2br($_POST['index']);
   $sql->update("UPDATE hovedside SET `index` = '$index'", "<hr /><p class=\"center\">Hovedsiden har nå blitt oppdatert!</p><a href=\"index.php\">Skriv om på nytt</a>" );
 } else {
 	echo "En feil oppstod";
 }
 include('adminhjelp.php');
}
include ('footer.php');
   $sql->close();
?>

en kode jeg hadde på lager :)

gjør slik at personen kan redigere hele siden, da han bare skriver html :)

 

edit: skal jeg legge med classes fila og kanskje?

orker liksom ikke skrive om så mye i scriptet akkurat nå at det gjør noe :p

Endret av LoS
Lenke til kommentar
emm, kan hende jeg misforstår men hvorfor lagre php scriptet i mysql? html kan lagres i mysql men PHP brukes jo for å få alt ut igjen...

Jeg tror heller at det er han selv som misforstår litt, derfor la jeg ut en html "editor" :)

Lenke til kommentar
emm, kan hende jeg misforstår men hvorfor lagre php scriptet i mysql? html kan lagres i mysql men PHP brukes jo for å få alt ut igjen...

Jeg tror heller at det er han selv som misforstår litt, derfor la jeg ut en html "editor" :)

Tja... redigere hele siden ved å mekke en HTML-editor er ikke noe problem da, det har jeg allerede fikset.

 

På min side har jeg f.eks.:

 

En del tekst

Et script

En del mer tekst

Enda et script

Enda mer tekst

 

I en database må jeg jo isåfall da lagre avsnitt 1, avsnitt 2 og avsnitt 3? Og så hente inn disse fra databasen mellom hvert script.

 

Lurte bare på om det var noen bedre måte å fikse det på? Kan jo legge PHP-scriptet i MySQL da (har funnet ut hvordan), men synes det blir rotete....

 

Andre løsninger?

 

P.S.

Ja, vet det var jævli krøkkete spørsmåls-formulering. :p

 

 

Edit: Og pointet med å få alt innhold i MySQL var jo å gjøre hele websiden søkbar da. Sånn praktisk sett synes jeg det er best å ha siden delt inn i php-filer. Men orker ikke ha en "agent" som snurrer og indekserer sider, som en søkemotor.

Endret av voluz
Lenke til kommentar

Du må jo uansett hente ut php kodene med php da, så poenget blir jo borte..

 

Dessuten, hvem er det som søker etter f.eks: string, og får opp $string=$_POST[string']

det blir bare for dumt syns nå jeg.

Lenke til kommentar
Du må jo uansett hente ut php kodene med php da, så poenget blir jo borte..

 

Dessuten, hvem er det som søker etter f.eks: string, og får opp $string=$_POST[string']

det blir bare for dumt syns nå jeg.

For all del, du kan da lagre PHP kode i MySQL og bruke eval() til å kjøre den.

Men det er null poeng i det. Det er da ingen som har behov for å søke gjennom kildekoden på skriptet ditt????

 

Bruker jo div. strip_tags-funksjoner da, så søke-queries og -resultater ville jo aldri berøre koden som ligger lagret i MySQL - det var heller ikke planen.

 

Mente bare at det kanskje ville bli ryddigere/enklere eller noe om alt innhold på siden var samlet i en database, fremfor at innhold lå i databasen og script lå i filen.

 

Men kan tyde på at folk ikke er enig i det da. :p

 

Så da får jeg heller kjøre på den måten jeg trodde var tungvindt/upraktisk da - altså innhold i databasen og script i fil. :p

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...