» »

PHP začetnik

PHP začetnik

tadej123321 ::

Pozdravljeni!

Sem popolen php začetnik, in imam problem ki ga nikakor ne znam razvozlati. Obdelujem obrazce, vendar nikakor ne razumem zakaj spodna koda ne deluje (v angleščini je zato, ker sem jo prilepil iz primerov, ki sem jih dobil ob knjigi):

<?php // convert.php
$f = $c = "";

if (isset($_POST['f'])) $f = sanitizeString($_POST['f']);
if (isset($_POST['c'])) $c = sanitizeString($_POST['c']);

if ($f != '')
{
	$c = intval((5 / 9) * ($f - 32));
	$out = "$f °f equals $c °c";
}
elseif($c != '')
{
	$f = intval((9 / 5) * $c + 32);
	$out = "$c °c equals $f °f";
}
else $out = "";

echo <<<_END
<html><head><title>Temperature Converter</title>
</head><body><pre>
Enter either Fahrenheit or Celsius and click on Convert
	
<b>$out</b>
<form method="post" action="convert.php">
Fahrenheit <input type="text" name="f" size="7" />
   Celsius <input type="text" name="c" size="7" />
           <input type="submit" value="Convert" />
</form></pre></body></html>
_END;

function sanitizeString($var)
{
	$var = stripslashes($var);
	$var = htmlentities($var);
	$var = strip_tags($var);
	return $var;
}
?>



Fora je v tem, da večalimanj razumem kodo, saj ni zapletena, ne razumem pa zakaj ne deluje tako kot bi hotel, saj se na HTML ne spoznam najbolje (minilo je že kar nekaj časa od kar sem delal v HTML-ju).

Prosil bi za čim bolj natančno razlago, da bi si lahko dodobra razložil obrazce...

algo ::

Presnami jo na strežnik pa bo delovala. Ti verjetno pregleduješ na domačem računalniku, kjer php ne deluje oz. bi deloval, če bi si presnel na primer WAMP.

tadej123321 ::

Hmmmm, ubistvu ja, ne vem kako mi je to uspelo, vendar sem to popolnoma spregledal :@
najlepša hvala

RockyS ::

Ok delaš po knjigi, php pa poganjaš lokalno(kot html) ? Najdi si novo knjigo.

ElectroSpy ::

zanima me ali je knjiga Naučite se PHP v 24 urah dobra? in bi tudi prosil če mi bi lahko kdo od tukaj bolj razločil kako razumeti PHP prosim in hvala :)

Putr ::

Jaz sem se sam doma nauču php, sedaj to profesionalno delam.

To je recimo odgovor ElectroSpy pa še komu če mu kaj pomaga.

Anyway:
1. Karkoli se naučiš tako da greš v CTK in si sposodiš knjigo, ki ne sme biti starejša od 2h let(!!!!!). CTK ima sicer vedno bolj zastarele knjige (ko sem se jaz učil so imeli čisto nove). Vedno ti ostane thebookdepository vendar svetujem da najprej povprašaš če kdo ima kaj takega in bi posodil.
2. Katero knjigo izbrati je najlažje tako da pogledaš review na amazon. Prašaš na irc.freenode.net ##php ter navsezadnje prebereš uvodno poglavje da vidiš če ti je avtorjev stil všeč.
3. OBVEZNO vse v ANGLEŠČINI. Slovenščina v svetu računalništva ne obstaja in ti bo samo škodovala. To velja za knjige, forume poste, blog poste itd. Ne rečem da v Slo ni nič dobrega, samo je zelo, zelo redko dobro, skoraj vedno zastarelo, v vsakem primeru pa te bodo slovenski prevodi terminologije samo zmedli.
4. VEDNO preveri datum. Spletne tehnologije se (razn resnično temeljnih osnov) spreminjajo na bazi mesecov in let. 3 leta stare knjige so večinoma za v smeti (včasih že 1 leto stare knjige, ko govorimo o cutting-edge tehnologijah).

Glavni problem učenja na lastno iniciativo je to da enostavno ne veš kaj ne veš. To je izredno problematično. Jaz sem ta problem zaobšel na 2 načina:
1. Prašaj, prašaj, prašaj. Najdi nekoga, ki to zna in ga prosi za nasvet. Vem da se v sloveniji ne sme spraševat, vendar tako se nikamor ne pride. Prašaj, prašaj, prašaj. Ne sprašuj za razlago. Sprašuj stvari kot so: "Katere naslove naj preštudiram in v katerem vrstnem redu", "Ali obstaja kakšen defacto resource za to?", "Kaj naj vnesem v google" ipd. za #kiberpipa in #slo-tech ne vem koliko so pripravljeni kaj pomagat (vedno lahko mene poštokaš) vendar na ##php @ freenode ti bodo na pametna vprašanja vedno odgovoril, vendar te bodo samo usmeril v pravo smer, delo moraš še vedno opraviti sam.
2. Slabši in bolj nezanesljiv pristop je logično postopanje po knjigah. Začni z nekaj v stilu "Begining programing" nadaljuj z neki, ki ima "Web development", v taki knjigi ti predstavi tehnolgije in ti jih malce razloži. Zapiši si te tehnologije in jih googlaj ter vzami knjigo, ki se specializira za to. In tako naprej.

Še za konec. Mnogi trdijo da se spletnih tehnologij ne da učiti iz knjig (zelo pogosto mnenje na ##php). To so večinoma ljudje, ki jim je bilo v šoli vse na pladnu prinešeno oz. so imeli dobre mentorje. Point učenja iz knjige je to da ti avtor pove vse kar moraš vedeti tako da saj veš kaj obstaja in kaj moraš znati. Če se učiš iz tutorialov in člankov ali še huje kar manuala boš dobil zelo specifične informacije, vendar ti nihče ne bo povedal kaj še obstaja. In tako se ti zgodi da greš pisat svoj CMS zato ker v nobnem tutorialu o osnovah za PHP ne povejo da obstajajo drupal, wordpress itd (moj primer izpred let).

HardFu ::

Putr ima nekaj valid trditev, sam bi dodal edino video tutoriale, ki so po mojem mnenju boljsi od knjig. Sam nisem prebral niti ene, pa se zivim s pisanjem phpja. Lynda.com is yer friend :)
Drugace pa tudi opazam da se ogromno programerjev drzi naucenega PHPja kot pijanec plota, zato bi svetoval tudi spremljanje trendov na sceni (ni nujno da PHP), torej sledenje priznanim twitterasem, blogom, hacker news... Ponavadi sam PHP ni dosti (treba je znati vsaj osnove HTML, CSS in Javascripta) in preko tega mimogrede ugotovis, da obstajajo tudi boljsi/drugacni pristopi in resitve k problemom. Nekako si upam trdit da je radovednost tista, preko katere se najvec naucis.
http://codeable.io

MrBrdo ::

Ja tudi jaz imam podobne izkušnje... Ko sem se jaz "učil" programirat že kakih 10 let nazaj, sem večinoma googlal in ždel na IRCu :) Takrat je sicer bil IRC še dosti bolj popularen. Res je, da začneš počasi najdeat folku, če preveč sprašuješ, ampak nič za to. Glavno je delat, delat, delat... Če boš samo knjige bral ne bo nič, seveda pomaga, ampak glavno je, da delaš. In če imaš example v knjigi je boljše, da jih probaš sam na pamet rešit, in samo preverit rešitev.
MrBrdo

HardFu ::

Jap, na IRCu se splaca bit skos, ker bo vedno nekdo ki nekaj ne bo znal kar ti znas (tudi ce bolj malo). In ko bodo drugi videli da se trudis pomagat ti bodo tudi oni pomagali pri zahtevnejsih problemih. IRC ni customer support, ampak community in ce si aktiven del tega dobis pomoc brez problema. Veliko novih userjev ponavadi pride, vprasa in gre. In so uzaljeni ce jim kdo ne pomaga.
http://codeable.io

MrBrdo ::

Tako mimogrede glede IRCa, greš na irc.freenode.org in greš na kanal za svoj jezik (npr. #php). Na freenodu imaš dosti aktivnih kanalov za raznorazne jezike. Za večje probleme pa se dandanes tudi veliko uporablja stran StackOverflow.
MrBrdo

ElectroSpy ::

Hvala vsem za odgovore :)


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Kaj mi priporočate? (strani: 1 2 )

Oddelek: Programiranje
544900 (1947) Kayzon
»

Izredni študij ali tečaji?

Oddelek: Šola
291812 (1266) Gandalfar
»

Kaj se učiti

Oddelek: Izdelava spletišč
321761 (1192) MrBrdo
»

PHP kvaliteten tutorial/knjiga

Oddelek: Programiranje
181494 (1139) Gandalfar
»

učenje c++, ali pascala, ali pa delphija (strani: 1 2 )

Oddelek: Programiranje
934449 (3438) Brilko

Več podobnih tem