Kezdőoldal » Számítástechnika » Programozás » Php felépítése kérdés?

Php felépítése kérdés?

Figyelt 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?



2013. jún. 23. 13:19
 1/9 anonim ***** válasza:

Hasznos olvasnivalók:


Milyen nyelv: [link]

Nyelv részletesebben: [link]

2013. jún. 23. 13:21
Hasznos számodra ez a válasz?
 2/9 anonim ***** válasza:
26%

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>

E-mail

</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

?>

====

2013. jún. 23. 13:43
Hasznos számodra ez a válasz?
 3/9 anonim ***** válasza:
100%

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).

2013. jún. 23. 20:19
Hasznos számodra ez a válasz?
 4/9 SimkoL ***** válasza:
Pascal után PHP. Hát teljesen más szintaxis, kösd fel a gatyát. Bár ha tudsz programozni nem nehéz megszokni. A logika a lényeg, ha tudod, hogy mit akarsz csinálni akármilyen nyelven le tudod kódolni - egy kis Google segítséggel -
2013. jún. 23. 20:48
Hasznos számodra ez a válasz?
 5/9 anonim ***** válasza:

"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.

2013. jún. 24. 06:14
Hasznos számodra ez a válasz?
 6/9 Drone007 ***** válasza:
100%

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!

2013. jún. 24. 19:12
Hasznos számodra ez a válasz?
 7/9 anonim ***** válasza:
Mi bajod a HTML-lel, hogy nem CSS-t használ a formázáshoz? Csak kíváncsiságból.
2013. jún. 24. 20:56
Hasznos számodra ez a válasz?
 8/9 Drone007 ***** válasza:
Alapvetően nem a css hiányával van probléma a Doktor úr kódjában, hanem a hiányos és elavult html szerkezeti elemekkel. 15 éve nem láttam ilyen kódot és már akkoriban sem volt valid, hogy táblázatcellákat soron kívül szúrjunk be.
2013. jún. 25. 06:58
Hasznos számodra ez a válasz?
 9/9 anonim ***** válasza:
Jaja, most látom, hogy nem mindegyik td-hez tartozik tr, ez tényleg nem követendő példa. :-)
2013. jún. 25. 07:21
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!