pomoc oko veoma prostu PHP skriptu...
Dobrodošli, Gost. Molim vas prijavite se ili se registrujte.
Da li ste izgubili vaš aktivacioni e-mail?

Prijavite se sa korisničkim imenom, lozinkom i dužinom sesije

Linuxo Forumi

Stranice: [1] 2   Idi dole
  Štampaj  
Autor Tema: pomoc oko veoma prostu PHP skriptu...  (Pročitano 2092 puta)
0 članova i 1 posetilac pregledaju ovu temu.
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« poslato: 25 Фебруар 2008, 21:02:59 »

Ovako... Samo sto sam poceo da ucim PHP. Sad za sada je sve ok, aj nije mi jasno ovo. Pogledajte ovu skriptu i bas mislim da je sve ok, al nece da se izvrsi.

Ovo je text.html
=============================
<HTML>
<HEAD></HEAD>
<BODY>
<FORM METHOD="POST" ACTION="text.php">
Who is your favourite author?
<INPUT  TYPE="TEXT" NAME="AVTOR">
<BR>
<BR>
<INPUT TYPE=SUBMIT>
</FORM>
</BODY>
</HTML>
==========================

A ovo text.php
==========================
<?php
echo $AVTOR;
?>

E sada ovo treba da kada ucitas text.html u browser-u i popolnis ono pole za autorom i kada kliknes 'submit' na narednu stranu da ti da ime autora koje si uneo. T.e. text.php skripta da to uradi. Al nesto kod mene nece. 100 puta sam proverio i kao sto mogu da vidim sve je ok??? Ili nije??

Hvala unapred.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
burga
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 568


Meet Linus


WWW
« Odgovor #1 poslato: 25 Фебруар 2008, 21:48:07 »

Stvar je relativno jednostavna, radi se o tome da je takav pristup promenljivim onemogucen iz bezbednosnih razloga. Postoje sistemske promenljive (ta;nije asocijativni nizovi) $_POST i $_GET. U ovom tvom slucaju potreban ti je $_POST niz. Promeni svoju skriptu tako da glasi:

Kod:
<?php
$AVTOR 
$_POST["AVTOR"];
echo 
$AVTOR;
?>

naravno, ovo mozes da skratis i napises
Kod:
<?php
echo $_POST["AVTOR"];
?>

ali je prvi nacin pregledniji i cesce se koristi.
Osim ova dva asocijativna niza postoji i $_SESSION i neki drugi, ali o tome kad stignes dotle sa ucenjem.
Prijavi uredniku   Sačuvana

Нема Бога, и Дирак је његов пророк
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #2 poslato: 25 Фебруар 2008, 22:52:06 »

Cool. Radi.

Hvala.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #3 poslato: 20 Март 2008, 05:39:51 »

A kako da uradim ovo?

Ovo su radion button-i:

<?
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=centos5 CHECKED> " . " CentOS 5";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=centos4 > " . " CentOS 4";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=mdk102> " . " Mandrake 10.2";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=mdv2006> " . " CentOS 4";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=etch> " . " Debian Etch";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=sarge> " . " Debian Sarge";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=fc6> " . " Fedora Core 6";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=fc7> " . " Fedora Core 7";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=fc8> " . " Fedora Core 8";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=buntu> " . " Ubuntu 6.06";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=ubuntu7.04> " . " Ubuntu 7.04";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=ubuntu7.10> " . " Ubuntu 7.10"
?>

Zelim da u isti skriptu negde dole ili bilo gde da napravim jednu sistemsku komandu i da na osnove koji OS je odabran kod te radio-buttone kada pritisnem dugme NEXT da mi posle tu veriziju OS zapise u nekog fajla na serevrot.

Nesto kao:

system(`cat $osver >> /home/osver.txt`);

Nesto tako.

Hvala unapred.
« Poslednja izmena: 20 Март 2008, 05:42:13 od paralizer » Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #4 poslato: 20 Март 2008, 05:55:07 »

Da dopunim jos...

Isto tako zelim da na tu istu skriptu imam jedno text polje koje mora da bude obavezno popunjeno. Ako nije da se pojavi pup-up prozorec koji kaze da nije i da neda da se skripta izvrsi sve dok to polje nije popunjeno.

Ovo moze da bude po mogucnots u PHP a moze i u HTML.

Hvala unapred.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
zeenmc
Jr. Member
**
Van mreže Van mreže

Poruke: 69


« Odgovor #5 poslato: 20 Март 2008, 12:19:05 »

dugo nisam radio php, ali ono kad procitas ovo, pogledaj na manualu, nacices resenje

npr

$input_polje

if (!$input_polje){
echo "<script>alert ("Polje nije popunjeno, molimo vas popunite polje, ili cu vam .... majku, i tektu , i seku ")</script>"
}
sala mala

a drugi nacin je sa funkcijom isset()

if (isset ($input_polje))


pozz
Prijavi uredniku   Sačuvana
foxbunny
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 2436



WWW
« Odgovor #6 poslato: 20 Март 2008, 12:41:33 »

Pa ako se vec cimas sa popupovima, onda bi bilo bolje da koristis AJAX za to. Mislim, cemu popup ako ces da reloadujes stranicu?

A ako neces AJAX, onda brate lepo ispisi poruku o greski pored tog text polja umesto da smaras sa popupom. Wink

npr (sorry za Python sintaksu, ali trebalo bi da bude jasno):

Kod:

if valid($input_polje):
  print "<p><strong>E, sad cu stvarno da vam... majku, i tektu , i seku</strong></p>"



EDIT:
@paralizer
Ne znam sto se jos uvek patis sa PHPom pored Symphonyja, Djanga i Railsa. Smiley


http://www.symfony-project.org/
http://www.djangoproject.org/
http://www.rubyonrails.org/
« Poslednja izmena: 20 Март 2008, 12:44:36 od foxbunny » Prijavi uredniku   Sačuvana

paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #7 poslato: 21 Март 2008, 00:18:41 »

Ma zato sto je celi projekat vec zapocen da se pise u PHP i Perl, a ja i nisam bas neki programer al trudim se.

Ja sam vise odgovoran za OS, servise koje rade na njega, mrezu i sl.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #8 poslato: 21 Март 2008, 00:20:42 »

A kazes da je bolje ako nesto pocnem da ucim da pocnem sa Rails i sl? Zasto? Jer je laksije sa njima, jer su popularnije, trazenije??? Sta?

Hvala na odgovoru.



EDIT:
@paralizer
Ne znam sto se jos uvek patis sa PHPom pored Symphonyja, Djanga i Railsa. Smiley


http://www.symfony-project.org/
http://www.djangoproject.org/
http://www.rubyonrails.org/
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
foxbunny
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 2436



WWW
« Odgovor #9 poslato: 21 Март 2008, 01:07:29 »

Pa pazi u cemu je stos. Ako pravis nesto komplikovano, onda ces vreme koje izgubis u ucenju veoma lako nadoknaditi carobnim mocima koje ti daju ova tri sto sam nabrojao (mada ih ima jos).

Moj drugar i ja smo zapoceli jedan projekat koji smo radili jedno 2 meseca u PHPu. Tada ja nisam programirao uopste. Onda mi je posle jedno 2 meseca pukao film, i reko ajmo mi lepo Rails. Ja sam za jedno 3~4 nedelje u Railsu uradio sve sto smo uradili za ta 2 meseca + jos jedno 60% planiranih funkcija i to sve kao potpuni pocetnik. I onda mi je puko film po drugi put, i predjem lepo na Django i za neke 2 nedelje iskodiram sve ono sto sam u Railsu kodirao mesec dana i to kao potpuni Django pocetnik. Da sam ostao na PHPu tada, verovatno bi sada jos uvek petljali oko osnovnih stvari.

Tako da, nije nikad kasno.

A kad se vec petljas sa PHPom, Symphoni je web framework za PHP, pa mozes i njega da probas. Ovako na prvi pogled deluje ok.

Web framework ti olaksava stvari tipa:

* rad sa podacima u bazi (ne pises ni red SQLa, vec koristis jezik u kome je pisan framework)
* rad sa HTTP pozivima i odzivima (sve formulare ti obradjuje framework, na primer, pa ti samo ima da radis logicki deo aplikacija)
* automatizuje prevodjenje (mada ovo nije bas svugde lako)

Django je u pogledu funkcija koje nudi ubedljivo najkompletniji, a i najbrzi je po pitanju performansi. Medjutim, ako nemas dedicated host, onda ti je Symphony najlaksi za postavljanje, posto PHP imas na skoro svim jevtinijim non-dedicated hostovima.

Uglavnom, baci pogled kad stignes. I ne zali vremena koje ces utrositi na ucenje, posto je dobitak u produktivnosti neverovatan!
« Poslednja izmena: 21 Март 2008, 01:09:30 od foxbunny » Prijavi uredniku   Sačuvana

paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #10 poslato: 21 Март 2008, 01:17:12 »

Ma imam hostove, i to koliko hoces. Radim za hosting komnaiju tako da host i servere nije nikakav problem. E sada caka je u tome sto ja radim tehnicku poddrsku, tako da sto se tice operativne sistem i sve to moze da se kaze da zname dovoljno od aspeka da instaliram PHP apache i mysql, ako nekome nesto zezne apache server, da ti sredim, neke konfiguracije i sl.... Znas sve sto se tice OS... al programiranje, ma nemam brate poime. T.e. znam nesto al nije to to, tako da zelim da naucim nesto i o tome.

Ok, od moje predhodne iskustva vidim da sve sto si mi reko si bio u pravo tako da.. I sada cu da te poslusm i pocinjem sa Django. Cheesy
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #11 poslato: 21 Март 2008, 01:22:01 »

E sada posto je skripta gotava u PHP-u treba mi jos samo ovo. Kako da jedna sistemska komanda "system" uzme neku vrednost koja je zadana preko neki radio button. Na pr. prokusacu da budem malo precizniji.

Imam recimo ova 2 radio butona.

echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=centos5 CHECKED> " . " CentOS 5";
echo "<br>" . "<INPUT NAME=osver TYPE=RADIO VALUE=centos4 > " . " CentOS 4";

I posle imam sistemsku komandu koja na osnovu na to koji je radio buton odabran tu verziju OS zapise u fajl.. Ovo je ta komanda:

system ("echo /server/(ove treba da uzme vrednost koja je cekirana u radio button) >> /home/test");,

I tako da kada stisnem "SUBMIT" dugme u /home/test fajl dobijem ovaj red:

/server/centos5

ili

/server/centos4

u zavisnost koji je OS odabran.

To je jos to sto mi treba i odna pocinjem sa Django.

Hvala unapred.
« Poslednja izmena: 21 Март 2008, 01:24:40 od paralizer » Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #12 poslato: 21 Март 2008, 05:33:19 »

I opet ja, i moje PHP ucenje. Ovako... Sada sam zaglavio na ovo. Burga ako ovo procitas mislim da ti mozes da mi pomognes jer ovi primeri su od knjigu koju si mi ti poslao. Problem je da je knjiga super ali je za PHP4 a ja imam PHP5. No, da ne duzimo mnogu:

Ovo su 2 skripte. Cela caka je sa array-ima. U pvru skriptu otvaras u web browser, odaberes koja drzava zelis, i kada stisnes submit, u drugu skriptu ti kaze koji je glavni grad te drzave.
================================
Skripta1. (states.php)
--------------------------------
<HTML>
<HEAD></HEAD>
<BODY>
<FORM ACTION="capitals.php" METHOD=POST>
What state do you want to know the capital of?
<SELECT NAME=State>
<?php
$StatesOfTheUSA = array (1 => "Alabama", "Alaska", "Arizona", "Arkansas",
"California", "Colorado", "Connecticut", "Delaware", "Florida", "Georgia",
"Hawaii", "Idaho", "Illinois", "Indiana", "Iowa", "Kansas", "Kentucky",
"Louisiana", "Maine", "Maryland", "Massachusetts", "Michigan", "Minnesota",
"Mississippi", "Missouri", "Montana", "Nebraska", "Nevada", "New Hampshire", "New
Jersey", "New Mexico", "New York", "North Carolina", "North Dakota", "Ohio",
"Oklahoma", "Oregon", "Pennsylvania", "Rhode Island", "South Carolina", "South
Dakota", "Tennessee", "Texas", "Utah", "Vermont", "Virginia", "Washington", "West
Virginia", "Wisconsin", "Wyoming");
for ($counter=1; $counter<51; $counter++) {
echo"<OPTION>$StatesOfTheUSA[$counter]</OPTION>";
}
echo "</SELECT><BR><BR>";
for ($counter=1; $counter<51; $counter++) {
echo"<INPUT TYPE=HIDDEN
NAME='HiddenState[]'VALUE='$StatesOfTheUSA[$counter]'>";
}
echo "<INPUT TYPE=SUBMIT></FORM>";
?>
</BODY>
</HTML>

======================
Skripta2 (capitals.php)
---------------------------------
<HTML>
<HEAD></HEAD>
<BODY>
<?php
$State=$_POST["State"];
$StateCapital = array (0 => "Montgomery", "Juneau", "Phoenix", "Little Rock",
"Sacramento","Denver","Hartford", "Dover","Tallahasse", "Atlanta", "Honolulu",
"Boise", "Springfield","Indianapolis", "Des Moines", "Topeka", "Frankfort", "Baton
Rouge","Augusta","Annapolis","Boston", "Lansing", "Saint Paul","Jackson",
"Jefferson City", "Helena","Lincoln", "Carson City","Concord", "Trenton","Santa
Fe", "Albany", "Raleigh","Bismarck","Columbus","Oklahoma City", "Salem",
"Harrisburg", "Providence", "Columbia","Pierre", "Nashville", "Austin","Salt Lake
City", "Montpelier","Richmond","Olympia","Charleston", "Madison","Cheyenne");
for ($counter=0; $counter<50; $counter++)
{
if($HiddenState[$counter]==$State)
{
echo "The State capital is " .  $StateCapital[$counter];
}
}
?>
</BODY>
</HTML>

Ne znam kako da prebacim onu "HiddenState[]" promenlivu od onaj dropdown box u narednu stranu.

Hvala unapred.
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
foxbunny
Hero Member
*****
Van mreže Van mreže

Pol: Muškarac
Poruke: 2436



WWW
« Odgovor #13 poslato: 21 Март 2008, 16:14:38 »

Ok, od moje predhodne iskustva vidim da sve sto si mi reko si bio u pravo tako da.. I sada cu da te poslusm i pocinjem sa Django. Cheesy

Pa cimaj na GTalk ako ti treba pomoc. Wink
Prijavi uredniku   Sačuvana

paralizer
Sr. Member
****
Van mreže Van mreže

Pol: Muškarac
Poruke: 491


« Odgovor #14 poslato: 21 Март 2008, 17:38:21 »

Ma nije problem za to. Vec nisam stigo jos da ukljucim taj kom. gde su "moje stvari" Jer imam kod kuce nekoliko kom. al taj je MOJ. Bas moj, i niko nema pristapa njemo. Evo sada kuvam kafu i idem da ga ukljucime.

Ok, od moje predhodne iskustva vidim da sve sto si mi reko si bio u pravo tako da.. I sada cu da te poslusm i pocinjem sa Django. Cheesy

Pa cimaj na GTalk ako ti treba pomoc. Wink
Prijavi uredniku   Sačuvana

Male price o velikoj ljubavi...
Stranice: [1] 2   Idi gore
  Štampaj  
 
Prebaci se na: