Pereiti prie turinio

php dalys į funkcijas


Rekomenduojami pranešimai

Sveiki, mokausi po truputį php. Dabar iškylo bėda. Noriu pažymėtas vietas sudėti į atskirą failą funkcions.php, bet nelabai gaunasi. Gal kas galit padėti ir parodyti,kaip tai turi atrodyti? :)

 

<?php

if(empty($_GET['id'])){

$_GET['id'] = 1;

}

$id = $_GET['id'];

$login = mysql_connect("localhost","root");

mysql_select_db("mode", $login);

mysql_query("SET NAMES utf8");

$query1 = mysql_query("SELECT * FROM turinys WHERE id = '$id' LIMIT 1");

$query2 = mysql_query("SELECT * FROM turinys ORDER BY id ASC");

$result = mysql_fetch_assoc($query1);

$turinys = $result['tekstas'];

$pavadinimas = $result['pavadinimas'];

$numeris = $result['id'];

 

function pslpav($pavadinimas){

if($pavadinimas){

echo $pavadinimas;

}

else{

echo "Tokio puslapio nėra.";

}

}

 

mysql_close($login);

?>

<html>

<head>

<title><?php pslpav($pavadinimas); ?> </title>

<meta charset="utf-8" />

<link rel="stylesheet" href="stylesheet.css" type="text/css" />

</head>

<body>

<div id="main">

<img src="images/logo.png" alt="Kibkit.lt" id="logo" />

<div id="header">

<ul id="header">

<?php

while ($result2 = mysql_fetch_assoc($query2)){

$idnr = $result2['id'];

$pav = $result2['pavadinimas'];

echo '<li><a href="index.php?id='.$idnr.'">'.$pav.'</a></li>';

}

?>

</ul>

</div>

<div id="content">

<?php

if($turinys){

echo $turinys;

}

else{

echo "<h1>Tokio puslapio nėra.</h1>";

}

?>

</div>

</div>

</body>

</html>

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Dedu tas dalys į functions.php.

Rašau:

 

function pavadinimas() {

 

kodas

}

Tada einu į index.php

Viršuje padarau include

o vietoje kodo kur buvo nurodau funkcijos pavadinimą, bet nesigauna.

Biski is logines puses neteisingai darai. Tau reikia ne koda includinti i sablona, o sablona includinti i koda. Kitaip pasakius isnesk visa HTML i atskira faila ir inluding ji paciame gale, o visus rezultatus patalpink i masyva ir ji naudok tame faile.

 

Pvz neidealus, bet turetum suprasti.

index.php

 

<?php

$result = array();

 

$result['summ'] = 1 + 1;

$result['substr'] = 1 - 1;

 

require 'tmpl.php';

?>

 

tmpl.php

 

<?php

1 + 1 = <?php echo $result['summ'];?>

1 - 1 = <?php echo $result['substr'];?>

?>

Redagavo apieviska
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Biski is logines puses neteisingai darai. Tau reikia ne koda includinti i sablona, o sablona includinti i koda. Kitaip pasakius isnesk visa HTML i atskira faila ir inluding ji paciame gale, o visus rezultatus patalpink i masyva ir ji naudok tame faile.

 

Pvz neidealus, bet turetum suprasti.

Kiek supratau nereik man čia labai gylintis į tas peripetijas. Man pasakė, kad turi būti 3 failiukai. Index, funkciju ir stiliaus. Tai manau teisingai darau. Vat, ar mokytojas teisingai ar neteisingai pateikė užduotį, čia jau kitas klausimas. Šiaip ar taip problema neišspręsta. Gal gali parodyti, kaip įdėti tarkim pirmą dalį, kur yra prisijungimas prie DB ir užklausos į funkcijų failą, ir kaip turi atrodyti po to index.php failas :)

Iš anksto dėkoju.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Kiek supratau nereik man čia labai gylintis į tas peripetijas. Man pasakė, kad turi būti 3 failiukai. Index, funkciju ir stiliaus. Tai manau teisingai darau. Vat, ar mokytojas teisingai ar neteisingai pateikė užduotį, čia jau kitas klausimas. Šiaip ar taip problema neišspręsta. Gal gali parodyti, kaip įdėti tarkim pirmą dalį, kur yra prisijungimas prie DB ir užklausos į funkcijų failą, ir kaip turi atrodyti po to index.php failas :)

Iš anksto dėkoju.

Blin, pabandziau perrasyti, bet automatiskai pridejau visokiu escape ir panasiai... Krc atpes destytojas, kad ne tu darei, nes man kitaip neeina... Gal geriau numesk man savo iskaidyta varianta, o as ji pataisisiu.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pastebėjimai: kodas neoptimizuotas, naudoji seną MySQL technologiją, užklausa reikėjo daryti tik vieną, duomenų bazės lentelėse ID turi būti unikalus, nėra jokių apsaugų ir duomenų tikrinimo.

Patarimai ateičiai: failams įterpti naudok tik require_once arba include_once, vietoj mysql geriau naudok PDO arba MySQLi, vietoj while ciklo naudok foreach, jai nori greitai sukurti kintamuosius iš asociatyvaus masyvo naudok extract(). HTML failuose geriau naudok alternatyvę PHP sintaksę ir be reikalo nekurk kintamųjų. Nespausdink HTML gairių su PHP, jai tai tikrai nėra būtina, ypač didelių blokų. Duomenų filtravimas ir tikrinimas yra būtinas. Kintamieji, funkcijos, komentarai,.. turėtų būti anglu kalba. Jai reikia pagalbos gali parašyti AŽ.

Redagavo mantys89
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...