phptutorial.odlican.net - Php tutorial PHP korisne skripte
Ukoliko ste napravili neku korisnu PHP skriptu ili PHP klasu te želite da ju objavim ovdje pošaljite mi ju putem Ove forme ili na e-mail
Skripta (kopirajte i snimite kao .php datoteku):
<?
if ( $_POST['pokreni']!=NULL ) {
echo "Rezultati konekcije<br />";
if ($kon = @mysql_connect($_POST['server'],
$_POST['korisnicko_ime'], $_POST['lozinka'])){
echo "Konekcija: <p style=\"color:green\">Uspješno </p>";
} else {
echo "Konekcija: <p
style=\"color:red\">".mysql_error()."</p>";
}
if ($bazalink = mysql_select_db($_POST['baza'], $kon)) {
echo "Baza:<p style=\"color:green\"> Uspješno</p>";
} else {
echo "Baza: <p style=\"color:red\">".mysql_error()."</p>";
}
mysql_close($kon);
}
?>
</body>Skripta (kopirajte i snimite kao .php datoteku):
<?
$handle=opendir("ovdje_dolazi_puni_put_do_direktorija");
$counter=0;
while (false !== ($file = readdir($handle))) {
if ($file != "." and $file != ".." and (strpos($file,
'.html')!=false)){
$list[$counter]=$file;
$counter++;
}
}
closedir($handle);
$counter--;
$i=0;
while ($i<=$counter){
echo $i." ".$list[$i]."<br />";
$i++;
}
?>
primjer punog puta direktorija je: /home/odlican/public_html/phptutorial/
Ako želite listati sve datoteke - izbrišite uvjet "and (strpos($file, '.html')!=false)"
POSTUPAJTE KRAJNJE OPREZNO S OVOM SKRIPTOM KAKO NE BISTE OBRISALI KRIVE PODATKE
Ja ju koristim kod testiranja - te mi se učinila praktičnom i uštedila mi vrijeme.
U kodu je prije korištenja potrebno promijeniti podatke VASE_KORISNICKO_IME i VASA_BAZA ostali se podaci uzimaju iz forme.
Skripta nema provjeru postoji li ID tj. ne javlja grešku ukoliko joj ubacite nepostojeći ID kao parametar.
<?
if ( isset($_POST['pokreni'])) {
$lozinka=$_POST['lozinka'];
$tablica=$_POST['tablica'];
$id_naziv=$_POST['id_naziv'];
$id=$_POST['id'];
$sql="DELETE FROM `$tablica` WHERE `$id_naziv`=$id";
echo $sql;
mysql_connect("localhost", "VASE_KORISNICKO_IME", $lozinka)
or die("Neuspjela konekcija") ;
mysql_select_db("VASA_BAZA") or die("Neuspio odabir baze");
mysql_query("$sql") or die (mysql_error());
mysql_close();
} else {
echo "Nisam napravio nista!!!";}
?>
NAPOMENA ovu kao i sve ostale skripte koristite na vlastitu odgovornost!!!
Ukoliko niste sigurni tj. ne znate što pojedini kod radi savjetujem vam da ga ne pokrećete
Kao što vjerojatno znate, internet tražilice poput googla nisu baš sklone indeksiranju dinamičkih stranica.
Kako biste svoje stranice učinili tražilicama na izgled statičnima može se koristiti mod rewrite-ing.
Ovdje ću vam prikazati uz objašnjenje najjednostavniji primjer
Za primjer sam upotrebio stranice modrestranice.php slijedećeg sadržaja:
<?
if (isset($_GET["jez"])){
$jez=$_GET["jez"];
}else{
$jez=1;
}
if ($jez==2) {
echo "<a
href=\"http://phptutorial.odlican.net/modrestranice/jez/1/\">
Hrvatski </a>";
}
if ($jez==1) {
echo "<a
href=\"http://phptutorial.odlican.net/modrestranice/jez/2/\">
English </a>";
}
?>
Jedino što možete primjetiti kao čudno su linkovi. pokazuju na modrestranice/jez/1/
Normalni link bio bi http://phptutorial.odlican.net/modrestranice.php?jez=1
Slijedi dio gdje ćemo kroz mod rewrite serveru izjednačiti ovo dvoje to jest dati uputu da ukoliko korisnik otipka adresu modrestranice/jez/1 automatski isto prevede u modrestranice?jez=1
Za ovo je potrebno modificirati .htaccess datoteku u root-u (u ovom primjeru istu pošto nije postojala napravio sam u /home/odlican/public_html/phptutorial/
Sadržaj .htaccess datoteke je slijedeći:
U nekim slučajevima ako ne postavimo Options +FollowSymLinks server može vratiti grešku 500
Prvi RewriteRule kaže serveru da ukoliko od korisnika primi zahtjev za /modrestranice/tekst1/tekst2/ isto protumači kao /modrestranice.php?tekst1=tekst2
Potrebno je izmjeniti samo e-mail adrese primatelja, teme e-mailova koje prima i opcije na formi.
Sve skupa u jedan .php file ili ubacite kod na stranice gdje vam odgovara.
Ako ubacujete u svoje stranice izbacite html body tagove i promijenite poruku koja je za vanjsku datoteku.
Kod je slijedeći:
<?
echo "<html>";
echo "<body>";
if (isset($_POST['salji']))
{
$ime = $_POST['ime'];
$email = $_POST['email'];
$poruka = $_POST['poruka'];
$rec = $_POST['primatelj'];
if ($ime!=NULL and $email!=NULL and $poruka!=NULL)
{
switch($rec)
{
case 1:
$primatelj="gruberit@gmail.com";
$tema = "Opcija 1 tema - sa stranica
phptutorial.odlican.net";
break;
case 2:
$primatelj="gruberit@gmail.com";
$tema = "Opcija 2 tema - sa stranica
phptutorial.odlican.net";
break;
case 3:
$primatelj="gruberit@gmail.com";
$tema = "Opcija 3 tema - sa stranica
phptutorial.odlican.net";
break;
default:
$primatelj="gruberit@gmail.com";
$tema = "Oprez - ja ne postojim - sa stranica
phptutorial.odlican.net";
break;
}
if (strpos($email,"@",1)!=NULL and
strpos($email,".",strpos($email,"@",1))!=NULL)
{
$formcontent="Posjetitelj: $ime\n\nPoruka: $poruka";
$mailheader = "From: $email\r\n";
$mailheader .= "Reply-To: $email\r\n";
$mailheader .= "MIME-Version: 1.0\r\n";
mail($primatelj, $tema, $formcontent, $mailheader) or
exit("Greška servera - poruka nije poslana");
echo "Vaša poruka: $poruka <br /> poslana je.<br />";
echo "Zahvaljujem na vašoj poruci, možete zatvoriti ovaj
prozor!!!";
}else {
echo "E-mail addresa neispravna!!";
}
}else {
echo "Niste upisali neki od neophodnih podataka na formi!!";
}
} else {
echo "<p>";
echo "<form method=\"post\">";
echo "<strong>Vaše ime :</strong> <input type=\"text\"
name=\"ime\"><br />";
echo "<strong>Vaš e-mail :</strong> <input type=\"text\"
name=\"email\"><br />";
echo "Svrha kontakta:<select name=\"recipient\">";
echo "<option value=\"1\">Opcija 1</option>";
echo "<option value=\"2\">Opcija 2</option>";
echo "<option value=\"3\">Opcija 3</option>";
echo "</select><br />";
echo "<strong>Vaša poruka:</strong><br /><textarea
name=\"poruka\" cols=\"40\" rows=\"10\"></textarea><br />";
echo "<input type=\"submit\" value=\"Pošalji\"
name=\"salji\"><br />";
echo "</form>";
echo "</p>";
echo "</body>";
echo "</html>";
}
?>
Možete vidjeti kako to izgleda na mojoj kontakt formi, kod je isti uz modificirane opcije
Funkcija check_sof() provjerava nalazi li se string u nizu i vraća istinu ako se nalazi ili laž ako ga nema
<?
function check_sof($esof,$exs)
{
for ($i=0;$i <= count($exs);$i++){
if ($exs[$i]== $esof){
return true;
}
}
return false;
}
?>
Funkcija izbaci() izbacuje sve stringove iz niza $sto koje pronađe u stringu $gdje i vraća natrag očišćen string
<?
function izbaci($sto,$gdje)
{
for ($i=0;$i<=(count($sto));$i++)
{
$gdje=str_replace($sto[$i],"",$gdje);
}
return $gdje;
}
?>
Ove stranice i sadržaj vlasništvo su phptutorial.odlican.net
PHP tutorial - odlican net s uputama za izradu vaših stranica