Scripts

Webpagina 'volledig' in Mysql.

LET OP: Zoals het hier wordt gepresenteerd, is het systeem niet volledig waterdicht. Ik ga er vanuit dat je zelf je database e.d. beveiligd. Tevens is een basisgedeelte dat op dit moment wordt getest. !! Met dit script op een webserver heb ik een systeem gemaakt waarmee ik alle pagina's uit een database haal. Hiermee kan je makkelijker omgaan met rechten op de pagina en hoef je alleen maar een back-up te maken van de MySQL Database. Mocht je hiermee verdergaan,...... Houd er dan rekening mee dat je je variabelen in een sessie-variabele stopt!

webpagina-volledig-in-mysql
Je moet een database met tabel aanmaken met 3 kolommen.
ID - int (Het id dat je kunt ophalen)
SCRIPT - memo (Het werkelijke script)
NAME - varchar (De naam van het script)



<?php 
# Start een sessie, waarmee je evt. een login kunt bijhouden. 
session_start(); 

# Geef de MySQL Server, Database en Tabel aan. 
$mysql_server = 'localhost'; 
$db = 'test'; 
$table = 'php'; 

$db_scripts = ''; 
$tbale_scripts = ''; 

# Maak een verbinding met de MySQL Server. 
$mysql_link = mysql_connect($mysql_server,'','') 
or die ('Kan geen verbinding maken met MySQL-Server: '.mysql_error()); 
# Stel de Query op. 
# Als eerste wordt script '0' opgehaald met een functie script erin waarmee je verder kunt werken om de scripts op te halen.
$query = "SELECT * FROM $db.$table WHERE id='0';"; 
# Laat de Query uitvoeren. 
$result = mysql_query($query, $mysql_link) 
or die ('Fout in query: '.mysql_error()); 
# Sluit de verbinding als deze bestaat. 
if ($mysql_link) 
{ 
mysql_close($mysql_link); 
} 


$data = mysql_fetch_array($result, MYSQL_NUM); 

# Laat de opgehaalde code Parsen.
eval($data[1]);

script(1,0); 

?> 

/*  De functie scritp() met debug. */
/*  Deze functie moet je in het eeste script dat je ophaalt plaatsen. */

<?

function script($exe_id,$debug) 
{ 
# Check if script id is not empty. 
if ($id == NULL) 
   { 
   echo "<font color='#FF0000'>Geen of ongeldig script opgegeven!</font><br />\n"; 
   } else { 
   $script_query = "SELECT * FROM $db.$table WHERE `id`=$id;"; 
   } 

$data = mysql_fetch_row(mysql_query($script_query));

   while ($data = mysql_fetch_array($result, MYSQL_BOTH)) 
    { 
    if ($debug == 1) 
      { 
       addslashes(highlight_string($data[1])); 
      } elseif ($debug == 2) 
       { 
       echo $data[1]; 
       } else { 
        eval($data[1]); 
        } #end_if debug 
    }#end_while 
unset($exe_id); 
}#end_function script 

?>

/* De Editor */

<?php

if ($_SESSION['login_check'] != 1)
  {
  echo "<b><i>U moet zich eerst aan melden voordat u kunt wijzigen.</i></b><br /> \n";
  } else {

###########################################################
function list_scripts($id)
{
$query = "SELECT * FROM test.php ORDER BY id ASC;";
$result = get_mysql_data($query);
echo "<tr><td>";
echo "Beschikbare scripts: <br />\n<ul>";

while ($data = mysql_fetch_array($result, MYSQL_NUM))
  {
  echo "<li><a href='?id=".$_GET['id']."&amp;script=$data[0]&amp;name=$data[2]' title='Script: $data[0]'>$data[2]</a></li>\n";
  }
echo "</ul></td></tr>\n";
}
###########################################################

$value = addslashes($_POST['value'] );

if (isset($_POST['write']))
  {
  $query = "UPDATE test.php SET script='$value', omschrijving='".$_POST['name']."' WHERE id='".$script."';";
  $result = get_mysql_data($query);
  }

if (ISSET($_POST['delete']))
  {
   $query = "DELETE FROM test.php WHERE `id`=$script;";
   $result = get_mysql_data($query);
   unset($script);
  }

if (ISSET($_POST['new']))
  {
  $query = "INSERT INTO test.php (script, omschrijving) VALUES ('echo \"Nieuwe Pagina\"; \\n \\necho \"<hr><br>\";','Nieuwe_Pagina');";

  $result = get_mysql_data($query);
  }

echo "<table width='500' align='center'> \n";
echo "<caption><b>Script editor: $name</b></caption> \n";

if (isset($script))
  {
  echo "<tr>";
   echo "<td valign='top'>";
   # Highlight the file //Debug ==1
   script($script,1);
   echo "</td></tr>\n";

  echo "<tr>";
   echo "<td><form action='?id=".$_GET['id']."&amp;script=".$_GET['script']."&amp;name=".$_GET['name']."' method='post'>";
   echo "<pre><textarea name='value' cols='80' rows='20'>";
   script($script,2);
   echo "</textarea></pre><br />\n";

   echo "<input type='reset' name='reset' value='Reset' />";
   echo "<input type='submit' name='write' value='Opslaan' />";
   echo "Script name: <input type='text' name='name' value='$name' />\n";
   echo "<input type='submit' name='new' value='New Script' />\n";
   echo "<input type='submit' name='delete' value='Delete Script' />\n";
   echo "<input type='hidden' name='script' value='$script' />\n";
   echo "</form>";

   echo "<form action='/' method='post'>";
   echo "<input type='submit' name='close' value='Editor Sluiten'>";
   echo "<a href=/?id=$script>Show Script</a>";
   echo "</form>\n";

   echo "</td>";
  echo "</tr>\n";

   list_scripts($_GET['id']);

  } else {
  echo "<tr><td>Kies een script om te wijzigen of maak een nieuw script!</td></tr>\n";
  list_scripts($_GET['id']);
  }

 echo "</table>\n";

}

?>


Ik had het script eens voor mezelf gemaakt, en misschien dat anderen het ook iets leuks vinden. Succes.

Reacties

0
Nog geen reacties.