Php felépítése kérdés?
php-t szeretnék tanulni.
Tudnátok írni róla? Hogy működik? Eddig Pascalt tanultam, oda kellett valami fordító. De HTML-hez nem kell.
Ez milyen nyelv?
A PHP-t főleg akkor használják, ha a weblap adatbázist kezel:
- adatokat kér és tölt egy adatbázisba,
- egy nagy adatbázisból a felhasználó igényeinek megfelelő részleteket ír ki.
Az adatbázist MYSQL-ben szokta kezelni.
A legjobb az, hogyha letöltöd a PHP-t, a MYSQL-t és a Wamp Servert a gépedre, és elkezded olvasgatni a súgókat. A letöltéssel nagon jól érthető magyarázó fájlokat kapsz a PHP rengeteg függvényéről.
Nagyon érdekes, ahogy az egyik weblapon levő beviteli mezőket átadja a következő feldolgozó weblapnak.
A PHP utasítások a HTML utasítások közé vannak beágyazva.
A változók dollár jellel kezdődnek. A műveleti jelek a C-re emlékeztetnek.
Példa: prímszámok keresése
=====================
<head>
<title>Primszamok</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<meta http-equiv="Content-Language" content="hu">
<meta name="keywords" content="Listak es hivatkozasok gyakorlasa" background="flag.gif" bgcolor="yellow" text="blue">
<meta name="description" content="Hivatkozások tulajdonságai">
<meta name="author" content="Nagy Ferenc">
<!--
<base target="_parent">
-->
<base target="tartalom">
</head>
<body link="red" vlink="green" bgcolor="cyan">
<h1>Primszamok</h1>
<?php
$p[1]=2;
$k=1;
print(2);
print(" ");
for($n=3;$n<=100;$n++)
{
$j=1;
do {
$m=$n%$p[$j];
$j++;
} while(($j<=$k) && ($m>0) && ($n*$n<$p[$j-1]));
if($m!=0) {$p[++$k]=$n;print($n." ");}
}
?>
</body>
=====================
A következő tanfolyami példában vannak MYSQL hívások és JAVASCRIPT hívások is.
=====================================
<?php
define("TRACE",false);
require_once("java.php");
class adatbazis extends java_hivasok
{ //1
var $neve,$azon,$utasitas;
// Adatbázis megnyitása adott táblanévvel
function adatbazis($ab_neve="kiallitas",$tabla_neve="vendegkonyv")
{ //2
if (TRACE)
{ //
$this->alert($ab_neve.",",$tabla_neve);
} #
$this->hasznalhato=false;
$this->azon="Nincs kapcsolat.";
$this->ab_neve="Nem tudom.";
$this->tabla_neve="Nem tudom.";
$this->utasitas="";
$this->azon=mysql_connect("localhost","akárki","");
if (TRACE)
{ //
$this->alert($ab_neve.",",$tabla_neve);
} #
mysql_select_db($ab_neve);
$ellenorzes=mysql_query("show tables;");
$szerk_tomb=mysql_fetch_array($ellenorzes);
$szerk_str =implode(" ",$szerk_tomb);
if (TRACE)
{ //
$this->alert("szerk_str=".$szerk_str);
} #
if (strstr($szerk_str,$tabla_neve))
{ //3
$this->ab_neve=$ab_neve;
$this->tabla=$tabla_neve;
$this->hasznalhato=true;
} #3
return $this->hasznalhato;
if (TRACE)
{ //
$this->alert($this->hasznalhato);
} #
} #2
// Adatbázis bezárása
function zar()
{ // 2
mysql_close($this->azon);
$this->azon="zárva";
} # 2
// Új rekord hozzáfűzése
function beir()
{ //2
if ($this->hasznalhato)
{ //3
$tabla = "vendegkonyv";
$l="''";
$e="null";
$b="null";
$m='now()';
/* $m="'".date("Y-m-d H:i:s")."', "; helyett */
$i="''";
$hiba=false;
foreach ($_POST as $mezonev => $ertek)
{ //4
if (TRACE)
{ //
$this->alert($mezonev."=".$ertek);
} #
$ertek=trim($ertek);
for ($j=16;$j>1;$j/=2) // Dupla szóközök eltüntetése
{
while (strstr($ertek," "))
{
$ertek=str_replace(" "," ",$ertek);
}
}
switch ($mezonev)
{ //5
case "latogato" :
$ertek=ucwords($ertek);
if (ereg(".+",$ertek))
{ //6
if (!ereg("^[A-ZÁÉÍÓÖŐÚÜŰ ][\.a-zA-ZáéíóöőúüűÁÉÍÓÖŐÚÜŰ ]*",
$ertek))
{
$this->alert("A(z) »".$mezonev."«".
" nagybetűvel kezdődjön,".
" és ponttal, magyar betűkkel meg szóközökkel folytatódjon!") ;
$hiba=true;
}
else
{
$l=$this->dupla_idez($ertek);
}
} #6
else
{ // 6
$this->alert("A(z) »".$mezonev."« mező kitöltése kötelező!") ;
$hiba=true;
} #6
break;
case "email" :
$ertek=strtolower($ertek);
if (ereg("[0-9a-z]+([\-\._]*[0-9a-z_]+){0,3}@([0-9a-z_\-]+\.)+[a-z]{2,4}",
$ertek))
{
$e=$this->dupla_idez($ertek);
}
else
{
$this->alert("Szabálytalan e-mail cím!") ;
$hiba=true;
}
break;
case "beiras" : $b=$this->dupla_idez($ertek); break;
} # 5 switch
} # 4 foreach
if ($hiba)
{ //4
return false;
} # 4
else
{ // 4
$utasitas="INSERT INTO vendegkonyv values (";
/*Az implode() fv. vesszőkkel elváasztva egy stringbe rakja össze
a tömb elemeit. */
$beszurando_ertekek_tombje=array($l,$e,$m,$b,$i);
$utasitas.=implode(",",$beszurando_ertekek_tombje);
$utasitas.=');';
if (TRACE)
{ // 5
$this->alert("QUERY UTASÍTÁS=".$utasitas);
} # 5
mysql_query($utasitas);
return true;
} # 4
} # 3 hasznalhato
else // Nem használható a tábla.
{ // 3
return false;
} # 3
} # 2 fv
// Aposztóf vagy idézőjel duplázása és
// a szöveg aposztróf vagy idézőjel közé zárása
function dupla_idez($miben)
{ //2
if (ereg(".*'.*",$miben))
{
if (ereg('.*".*',$miben))
{ //Ez is az is
return '"'.str_replace('"','""',$miben).'"';
}
else
{ //Aposztóf van de idézőjel nincs benne
return '"'.$miben.'"';
}
}
else
{ // Aposztróf nincs benne
return "'".$miben."'";
}
} #2
//-----------------------
// Lekérdezés
function atnez()
{ //2
if (TRACE)
{ //
$this->alert($this->hasznalhato);
} #
if ($this->hasznalhato=false)
{ // 3
return false;
} # 3
else
{ // 3 hasznalhato
echo <<<FEJ
<html>
<head>
<title>A vendégkönyv tartalma</title>
</head>
<body bgcolor="black">
<div align="center">
<table bgcolor="gray" border="1" align="left" cellpadding="3">
<tr bgcolor="cyan">
<td>
Látogató
</td>
<td>
</td>
<td>
Kelt
</td>
<td>
Vélemény
</td>
<td>
Azon.
</td>
</tr>
FEJ;
if (TRACE)
{ //
$this->alert("QUERY következik.");
} #
$rekord=mysql_query("SELECT * FROM vendegkonyv;");
while($tomb=mysql_fetch_array($rekord))
{ // 4
echo '<tr>';
$k=false;
foreach ($tomb as $ertek)
{ //5
$k=!$k;
if ($k)
{
echo '<td>';
echo $ertek." ";
echo '</td>';
} #5
}
echo '</tr>';
} # 4
echo <<<LAB
<td>
<a href="javascript:history.back()">Vissza a főoldalra.</a>
</td>
</table>
</body>
</html>
LAB;
if (TRACE)
{ //
$this->alert($this->hasznalhato);
} #
return true;
} # 3 hasznalhato
} # 2 fv
} # 1 class vége
?>
====
te aztán unatkozol..
Tölts le egy wampservert és kész..
php leginkább akkor használják, ha dinamikus tartalom van..
Szerver oldali nyelv, tehát ez a szerveren legenerálja a dolgokat. Kliens rámegy az oldalra(kérés) -> szerver rendezkedik, ha php van a dologban, elvégzi, és egy (~)html(kliens oldali) kódot generál -> kliens megkapja.
Gúgli, elsősorban tutorialokat nézz/olvass, és php dokumentációjában nézheted hogyan használod a függvényeket.
Ha már érted az alapokat, hogyan használsz php-t, akkor kezdj csak bele mysql-be.
Még egyszer, csak egy wampserver kell (vagy xampp).
"A legjobb az, hogyha letöltöd a PHP-t, a MYSQL-t és a Wamp Servert a gépedre"
Ezt gondold át még egyszer.
Kedves Kérdező!
Ne ijedj meg, ennyire azért nem nehéz elkezdeni.
Amit meg kell értened: a php kódokhoz ugyanúgy fordító kell, mint pascalban, csak itt értelmezőnek hívjuk, és a webszerver részeként a szerver feladata, hogy átfuttassa rajta a php kódokat. Ahogy előttem is írták, a böngészők kimenetként már csak generált html kódokat kapnak meg.
Ahhoz, hogy otthon is tudj fejleszteni php alatt, webszerverre van szükséged, de ez sem gond, mert a neten kész csomagok vannak, amelyek kompletten tartalmazzák a fejlesztéshez (és egy működő webszerverhez) szükséges dolgokat. Ilyen a wamp vagy a xamp projekt windows alá. Linux alá kicsit máshogyan kell felrakni a szerver anyagot, de ott is csak pár utasítás kérdése az egész.
Dr. Nagy Ferenc látványos szólamát gyorsan felejtsd el, nyugodtan hagyd figyelmen kívül, ugyanis a kódban olyan részletek is vannak, amelyek már nem működnek a jelenlegi php verziókban (pl ereg függvény ki lett vezetve az 5.3-ban), emellett a html felépítés is botrányos amit használ.
A legjobb, ha a megfelelő naprakész tudásanyagot az internetről szerzed be (php.net, w3schools.com), bár nem árt, ha van egy hagyományosabb papír alapú segítséged is pl: Php 24 óra alatt c. könyv.
Viszont a php nem fog menni az alapvető html és css ismeretek nélkül, ha tehát ebben a témában nem vagy képben, akkor neki se kezdj a php-nek, előbb alaposan járd körbe a html/css/javascript hármast.
Sok sikert!
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!