Tutorials
Een goede Install.PHP
Hoe maak je een goede Install.PHP? Hier je antwoord!
Pagina 1
Inleiding.
Hoi. Je kent het wel, van die mensen die niet weten hoe ze config.php moeten
openen.. Maar er is een goede oplossing! Een Install.php dat automatisch de Queries uitvoert. Het enige wat ze hoeven te doen is het bestand config.php te CHModden naar 777, en ze moeten de Config Data WETEN, daarmee bedoel ik de Usernaam (Bijvoorbeeld db_kees), het database password enzovoorts!
Deze install.php gaat er van uit dat er zich in dezelfde map een config.php bevind, het maakt niet uit of er wat in staat of dat hij leeg is. Maar bij onervaren webmasters is het misschien handig er een lege in te zetten.
Nou, ik wil op het einde graag reacties horen :)
openen.. Maar er is een goede oplossing! Een Install.php dat automatisch de Queries uitvoert. Het enige wat ze hoeven te doen is het bestand config.php te CHModden naar 777, en ze moeten de Config Data WETEN, daarmee bedoel ik de Usernaam (Bijvoorbeeld db_kees), het database password enzovoorts!
Deze install.php gaat er van uit dat er zich in dezelfde map een config.php bevind, het maakt niet uit of er wat in staat of dat hij leeg is. Maar bij onervaren webmasters is het misschien handig er een lege in te zetten.
Nou, ik wil op het einde graag reacties horen :)
Pagina 2
Het script + Uitleg
Hierbij het script, let goed op het commentaar dat erbij staat, want daar wordt het script uitgelegd!
<?php
// Welkom op deze tutorial
// We hoeven niks te includen want het is een install :D
$config = "./config.php"; // We gaan zo checken of dit bestand bestaat,
// dus of het systeem correct is gedownload =]
if(!file_exists($config))
{
// ALs het systeem niet geinstalleerd is komt deze fout:
echo "Het bestand ".$config." is niet gevonden, heb je ons systeem
wel goed gedownload?
<a href=./install.php> <BR> Terug.. </BR>";
}
if(!isset($_POST['proceed']) || !isset($_POST['finish']))
{
// Als we nog geen informatie hebben, dus als de user nog niks
// heeft opgegeven..
?>
<!-- Dan openen we de form.. -->
<form method="post" action="./install.php">
<table width="auto" height="auto" border="0">
<tr>
<td>
Je database inlognaam:
</td>
<td>
<input type="text" name="databaseuser"> </td> </tr>
<!-- Nodig om naar de database to connecten -->
<tr>
<td>
Je database wachtwoord: </td>
<td>
<input type="password" name="databasepass"></td>
<!-- Ingelijks he, maar dat wist je al -->
</tr> <tr> <td>
Je host naam: </td>
<td> <input type="text" name="databasehost" value="localhost">
<!-- Deze database selecteerd hij, daar voert hij data in -->
</td> </tr> <tr> <td> Je database naam: </td>
<td> <input type="text" name="databasename"> </td> </tr>
<tr> <td> <input type="submit" name="proceed" value="Volgende..">
<!-- Database naam + de submit knop -->
</td>
</tr>
</table>
<?
}
/* Ok, we hebben nu een form aangemaakt waar de gebruiker de
config gegevens moet invullen. Deze gaan we later invoeren
in config.php (Dat bestand is nu nog leeg) door middel van
de functies fopen() en fwrite(). Daarom is het ook zo
belangrijk dat config.php ge ch'mod is naar 0777.
We gaan nu verder met een if(), daarmee controleren we
of de gebruiker al op volgende heeft gedrukt!
*/
if($_POST['proceed'])
{
// We gaan nu voor het overzicht de
// Opgekregen informatie in variabelen zetten
$dbuser = $_POST['databaseuser']; // De Database Username
$dbpass = $_POST['databasepass']; // Het Datapase password
$dbhost = $_POST['databasehost']; // De hostnaam
$dbdata = $_POST['databasename']; // De database naam.
// Nu gaan we aan de gebruiker vragen
// Of deze gegevens kloppen
// Behalve het password natuurlijk!
echo " Je ingevoerde inlognaam was: ".$dbuser." <BR> ";
echo " Je opgegeven Hostnaam: ".$dbhost." <BR> ";
echo " Je ingevoerde Database naam: ".$dbdata." <BR>";
echo " Als deze gegevens niet kloppen,
druk dan op dan op het BACK knopje
<BR> van je browser ";
/* De gebruiker kan deze informatie ten
alle tijden aanpassen, ze hoeven alleen
maar opnieuw te installeren.
We gaan zodadelijk de config gegevens
in config.php schrijven, en daarna
de queries invoeren!
*/
$openconfig = fopen("./config.php", "w");
// De W staat voor write,
// Het eerste gedeelte is het path
// naar de config + bestandsnaam
$configinhoud = " <?
mysql_connect('".$dbhost."','".$dbuser."','".$dbpass."');
mysql_select_db('".$dbdata."');
?>
";
// Deze data wordt zo dadelijk
// in config.php geschreven
// Je kan natuurlijk altijd
// meer tekst erin schrijven!
fwrite($openconfig, $configinhoud);
// De data is er nu ingeschreven
// Dus nu gaan we het bestand
// weer netjes sluiten!
fclose($openconfig);
/* Nu we de config data in config.php
hebben geschreven kunnen we de MySQL
queries invoeren, natuurlijk moet
je die wel aanpassen aan je eigen
site!
Als voorbeeld neem ik dit keer een
nieuwssysteem..
Maar eerst moeten we natuurlijk weer een
next knopje toevoegen! */
echo "De info is toegevoegd aan config.php <BR>";
echo "<form action=./install.php method=post>";
echo "<input type=submit name=finish value=Voltooien>";
echo "</form>";
}
if($_POST['finish'])
{
include("./config.php");
// Nu kunnen we config.php includen
// De laatste fase, de queries!
mysql_query("
CREATE TABLE `msg` (
`id` int(11) auto_increment,
`titel` VARCHAR( 250 ) NOT NULL ,
`ip` VARCHAR( 150 ) NOT NULL ,
`start` INT( 9 ) NOT NULL ,
`short` LONGTEXT NOT NULL ,
`long` LONGTEXT NOT NULL,
primary key(id)
);") or die(mysql_error());
/* Je kunt natuurlijk altijd nog
meer queries toevoegen..
En je kunt meer informatie opvragen
aan het begin van het script, maar
als je ergens niet uitkomt, kijk dan
nog eens goed naar dit script!!
*/
echo "Oke, we hebben alles succesvol uitgevoerd!<BR>";
echo "Als je toch iets fout hebt ingevoerd, upload dit bestand<BR>
dan openieuw!";
unlink('./install.php');
// Dit laatste stukje met dank aan Jip
}
?>
Reacties
0