Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows 10
  • Razmatranja trgovac knjiga gostiju php. Knjiga gostiju PHP Knjiga gostiju

Razmatranja trgovac knjiga gostiju php. Knjiga gostiju PHP Knjiga gostiju

Gospodina Isusa Krista, Sina Božjega, židovski prvosvećenici i rimski prokurator Poncije Pilat osudili su na razapinjanje.

Nakon toga Spasitelj je predan rimskim vojnicima. Vojnici su Ga svukli i obukli u purpur. Ovaj crveni vojnički ogrtač trebao je prikazivati ​​kraljevski purpur židovskog kralja.

Vojnici su ispleli krunu od trnja i stavili je Spasitelju na glavu, dali mu trsku u desnicu i, klečeći pred njim, rugali mu se govoreći: "Zdravo, kralju židovski!" Pljuvali su na Njega i, uzevši trsku, udarali Ga po glavi. I kad su Mu se rugali, skinuli su Njegovu grimiznu haljinu, obukli Ga u Njegovu odjeću i odveli Ga na razapinjanje.

Oni koji su bili osuđeni na razapinjanje trebali su sami nositi svoj križ na mjesto pogubljenja. Stoga su vojnici, metnuvši križ na Spasiteljeva ramena, odveli Ga na brdo zvano Golgota ili mjesto pogubljenja. Prema legendi, na ovom mjestu je sahranjen praotac ljudskog roda Adam. Golgota se nalazila zapadno od Jeruzalema, nedaleko od gradskih vrata zvanih Sudnja vrata.

Za Isusom je išlo veliko mnoštvo ljudi. Sama osobnost Uzenika i sve okolnosti njegova suđenja uzbudile su cijeli grad s brojnim hodočasnicima. Put je bio kamenit. Gospodin je bio mučen strašnim mukama. Jedva je hodao, pao je pod teretom Križa.

Stigli smo do gradskih vrata. Ovdje je put krenuo uzbrdo. Spasitelj je bio potpuno iscrpljen. U to vrijeme, vojnici su blizu vidjeli čovjeka koji je sa suosjećanjem gledao Krista.

Bio je to Simon, migrant iz libijskog grada Cirene. Vraćao se sa svog polja nakon posla u Jeruzalem. Vojnici su ga zgrabili i natjerali da nosi Kristov križ. Činili su to, naravno, ne iz samilosti prema Gospodinu, već iz želje da što prije stignu do Golgote i dovrše svoje djelo.

Među ljudima koji su slijedili Krista bilo je mnogo žena koje su suosjećale s Njim. Unatoč običaju koji zabranjuje suosjećanje s osobom koja se vodi na pogubljenje, gorko su plakali za Isusom.

Suosjećanje koje su izrazile bilo je tako duboko i iskreno da im se Gospodin, svladavajući bol, sa sućuti obratio: “Kćeri jeruzalemske! Ne plačite za mnom, nego plačite za sobom i za djecom svojom, jer dolaze dani u kojima će se reći: Blago nerotkinjama i utrobama koje nisu rađale i grudima koje nisu dojile!”

Gospodin kao da je zaboravio na patnju koja je bila pred njim. Njegov duhovni pogled usmjeren je na budućnost nekada izabranog Božjeg naroda i na kaznu koja će ga zadesiti zbog odbijanja Mesije.

Poticani od strane velikih svećenika i starješina, Židovi su od Pilata tražili Kristovo raspeće i bijesno vikali: “Krv njegova na nas i na našu djecu.” Time su sebi i svojoj djeci navukli neviđene nesreće.

Te će katastrofe biti toliko velike da će i sami njihovi životi postati nepodnošljivi. I „tada će početi govoriti planinama: Padnite na nas! i brda: pokrijte nas! Jer ako to učine sa zelenim stablom, što će biti sa suhim stablom?”

Pod zelenim drvetom, punim života, Gospodin je mislio na Sebe; pod suhim drvetom je židovski narod. Ako Njemu, Nedužnom, nije darovana milost, što će onda biti s krivcima?

Bez sumnje, Gospodin je ove riječi uputio na predstojeće uništenje Jeruzalema, koje je zadesilo ovaj grad nedugo nakon završetka zemaljskog života Spasitelja. U 70. godini nakon Rođenja Kristova, zapovjednik Titus sravnio je Jeruzalem sa zemljom, ne ostavivši kamen na kamenu. I narod Judin se raspršio po licu zemlje.

Danas ću opisati možda i najbolji zadatak za početnike PHP programskog jezika - Knjigu gostiju. Po mom mišljenju, ovaj zadatak je najjednostavniji, ali u isto vrijeme vam omogućuje da naučite sve glavne značajke rada s PHP-om i MySQL bazom podataka. Osim toga, ovaj zadatak je beskonačno proširiv, što vam omogućuje usavršavanje novih tehnologija.

Ovdje će biti napisan opis i rješenje ovog problema, bez testiranja funkcionalnosti, pa je možda negdje greška. To nije učinjeno zbog moje lijenosti, već opet zbog dodatne obuke prilikom izrade vaše knjige gostiju. Također, predstavljeno rješenje bit će malo “nakrivljeno”, ali o tome više na kraju ovog članka u rubrici “Samostalan rad”.

Ako uopće ne znate raditi s PHP-om, prvo vam savjetujem da pročitate članak PHP - odakle početi.

Analizirat ćemo izradu najprimitivnije knjige gostiju, bez dizajna i administracije. Drugim riječima, ograničit ćemo se na prijavu u knjigu, registraciju i ostavljanje poruka.
Iz samog zadatka postaje jasno da se možemo potpuno ograničiti na tri PHP datoteke za implementaciju ovog zadatka. Naravno, zadatak registracije možemo podijeliti na dva: obrazac za registraciju i dodavanje podataka u bazu, ali to nećemo raditi. Slično razmišljanje vrijedi i za postupak ostavljanja komentara. Dakle, kreiramo tri datoteke: index.php, registration.php, book.php.

Po nazivima datoteka možete odmah razumjeti za što će biti odgovorni: index.php - stranica za prijavu, registration.php - stranica za registraciju, book.php - stranica knjige gostiju.

Najjednostavnija stvar u našem slučaju je stranica za prijavu. Budući da je stranica odgovorna za unos para prijave i lozinke, mora sadržavati obrazac za slanje tih podataka stranici book.php. I također poveznica na stranicu za registraciju. Imamo:

Prijava u knjigu gostiju

Prijaviti se:
Lozinka:

Registracija

Malo odmicanje od teme, za one koji ne znaju što znači kod iznad. Ovdje imamo goli HTML. Ključ je oznaka oblik koji uzima dva parametra akcijski, koji je odgovoran za adresu stranice koja će se otvoriti nakon potvrde unosa podataka, te parametar metoda, koji odgovara na koji će način podaci obrasca biti poslani na navedenu stranicu (pogledajte POST i GET jednostavnim riječima). Unutar oznake forme naznačena su polja za unos (unos, odabir) koja moraju imati atribut Ime. Upravo pomoću vrijednosti ovog atributa bit će moguće dobiti podatke koje je korisnik unio na stranici navedenoj u parametru obrasca akcije. Mora postojati unos s tipom unutar obrasca podnijeti, što je u biti gumb, klikom na koji će se podaci poslati na radnu stranicu.

Nastavimo... Sada moramo napraviti novu stranicu za registraciju korisnika. Vrijedno je odmah razmisliti o tome što točno želimo imati. Odlučio sam da bi za jednostavnu knjigu gostiju bilo dovoljno imati korisnike s jedinstvenim prijavama, kao i znati adresu njihove web stranice (ako je ima). Nakon što smo odlučili što želimo znati o korisniku, tada možemo početi dizajnirati našu bazu podataka.

Idite na phpMyAdmin. Napravimo tamo bazu podataka s imenom gb. U ovoj bazi podataka izradit ćemo tablicu Korisnici sa sljedećim poljima:

Prijava varchar(50) jedinstvena //korisnička prijava, jedinstvena lozinka polja varchar(150) //lozinka www varchar(255) //adresa web stranice

A kako smo već ušli u uređivač baze podataka, odmah možemo razmišljati kako ćemo pohranjivati ​​poruke. U našem slučaju sasvim je prikladno znati tko je i kada ostavio poruku te stvarni tekst naše poruke. Također, radi praktičnosti, vrijedi numerirati naše poruke. Odlučili smo se za ovo, što znači da možemo sigurno stvoriti drugu tablicu Poruke sa sljedećom strukturom:

Id int ai(auto_increment) primary_key //broj poruke, brojač, koji će sam povećati me tekst //tekst poruke who varchar(50) //prijava osobe koja je ostavila poruku kada timestamp default(trenutno) //vrijeme odlaska poruku prema zadanom trenutnom datumu i vremenu

Sredili smo bazu podataka. Prijeđimo sada na datoteku registration.php. Sumirajući gore navedeno imamo:

Registracija

Prijaviti se:
Lozinka:
Ponovno lozinka:
WWW: http://


Na glavno

Malo o šifri. Kao što ste već primijetili, ovdje je prisutan PHP. Neću više opisivati ​​formu, ali kao što vidimo, ovdje se podaci forme šalju na istu stranicu na kojoj se nalazi ova forma. Drugim riječima, datoteka registration.php sama sebi šalje podatke. Nitko to ne zabranjuje, ali ne možete ga uvijek koristiti, jer uvelike kvari čitljivost koda. Međutim, s druge strane, ovo jasno pokazuje mogućnosti PHP jezika. U biti, naša stranica je podijeljena u dva slučaja. Prvi slučaj je kada se podaci šalju na stranicu putem POST zahtjeva, drugi slučaj je kada se na stranicu ne šalje POST zahtjev. U drugom slučaju prikazat ćemo obrazac za registraciju, au prvom ćemo početi provjeravati dostavljene podatke. Kao što vidite, podaci se šalju u obliku asocijativnog niza (tj. niza čiji su indeksi nizovi). Štoviše, indeksi se podudaraju s nazivima polja za unos navedenih u obrascu za dostavu podataka. Oni. ako pišemo

tada ćemo prilikom slanja ovih podataka s POST zahtjevom imati varijablu

$_POST["vasa-peta"]

Također je vrijedno napomenuti da ne radimo ponovne provjere prijave. Ova provjera će se provesti na razini baze podataka, jer je polje za prijavu označeno kao jedinstveno.

Sada zadnja stvar. Ostaje samo izraditi samu knjigu gostiju. Mala rasprava. Budući da knjiga gostiju radi s prijavom i lozinkom, prvo moramo provjeriti dostupnost unesene prijave i lozinke u bazi podataka. Budući da smo odlučili dodati poruke u datoteku book.php, onda očito treba slijediti postupak za dodavanje poruke. Pa na samom kraju prikaz svih poruka. (ako dodate poruku nakon što su prikazane, dodana poruka će se prikazati tek nakon što se stranica ponovno učita). Imamo:

Knjiga gostiju "; ) else ( echo "Vaša poruka nije dodana!


"; } } ?>
"name="prijava" /> "ime="lozinka" />

"; echo "Tekst: ".$row["mes"]."
"; ) ) mysql_close($link); ?>

To je u biti sve. Ako kod 100% radi, dobro. Ako ne, savjetujem vam da pokušate sami ispraviti pogreške. Sada obećani dio.

Samostalni rad
Kao što je spomenuto na početku, ovo rješenje je "krivo". Ako još uvijek ne razumijete zašto, sada ću vam objasniti. Kao što ste mogli primijetiti u datoteci book.php u formi za dodavanje komentara postoji nekoliko skrivenih polja, od kojih su dva polje za korisničko ime i lozinku koje korisnik upisuje. Nije dobro, zar ne? Pokušajte ispraviti ovaj nedostatak pomoću sesija (Kako raditi sa sesijama u PHP-u).
Pokušajte odgovoriti na pitanje po čemu se funkcije razlikuju prazan/isset I izaći/umrijeti?
Promijenite upit za odabir poruka iz baze tako da se prilikom prikaza poruka prikazuje web stranica autora poruke.
Ako ste primijetili, korisnička lozinka u bazi podataka pohranjena je u čistom tekstu, a to nije baš dobro. Uredite kôd tako da hash korisničke lozinke (na primjer MD5 ili SHA1) bude pohranjen u bazi podataka.

Danas ću ti dati skripta knjige gostiju u PHP-u, nije tajna da je ova stvar prilično popularna i ako ne postoji druga prilika za komunikaciju s upravom, onda je knjiga gostiju jednostavno neophodna. A u ovom članku možete preuzmite skriptu knjige gostiju u PHP-u, a govorit ću i o procesu njegove instalacije.

Vrlo često ljudi pitaju skripta knjige gostiju u html ili javascript. Jao, ovo se nikada nije dogodilo niti će se dogoditi, jer da bi knjiga gostiju radila, morate barem pisati poruke u datoteku. A to se ne može učiniti JavaScript, niti, posebno, u HTML nemoguće.

Sada kopirajte mapu gost u korijen vaše stranice. Zatim postavite poveznicu na knjigu gostiju na stranicu svoje web stranice ( http://vaša_stranica/gost).

Sljedeći korak je postavljanje knjige gostiju. Da biste to učinili, idite na adresu http://vaša_stranica/guest/admin.php. Upišite lozinku " admin" i nakon uspješne autorizacije idite na karticu " Konfiguracija". Kratak opis svih postavki:

  • Naziv skripte- stavite svoje ime u knjigu gostiju vaše stranice.
  • Tekst dobrodošlice- napišite bilo koji tekst koji želite da posjetitelji vide prilikom posjete knjizi gostiju.
  • Reklamni blok- ako želite staviti oglas u knjigu gostiju, kopirajte njegov kod u ovo polje. Ako ga nema, ostavite ovo polje prazno.
  • Link na glavnu stranicu- postavite poveznicu na glavnu stranicu vaše web stranice.
  • E-pošta administratora / slanje poruka- navedite svoje e-pošta, a također odaberite želite li primati poruke na svoju e-poštu ili ne.
  • Administratorska lozinka- obavezno unesite lozinku. Nemoj otići " admin".
  • Omogućiti moderiranje poruka?- ako želite provjeriti svaku poruku prije objave, uključite ovu opciju.
  • Trebate li omogućiti ANTISPAM funkciju?- ovdje možete onemogućiti sustav protiv neželjene pošte ili odabrati jednu od tri opcije: obični captcha, zagonetka ili matematička operacija. Ako odaberete obični digitalni captcha, također označite duljinu captcha u tekstualnom polju s desne strane.
  • Trebate li koristiti funkciju ANTI-FLOOD?- ova vam opcija omogućuje filtriranje poruka izvan teme.
  • Učiniti linkove u tekstu aktivnim?- ako staviš " Da", tada će veze u tekstu poruka biti aktivne. Ovo je zgodno za korisnike, ali vaša knjiga gostiju bit će dobro mjesto za spamera.
  • Omogućiti/onemogućiti grafičke emotikone?- ako staviš " Da", tada će korisnik moći koristiti emotikone.
  • Maks. duljina imena- dopušteni broj znakova u korisničkom imenu.
  • Maks. duljina poruke- dopušteni broj znakova u poruci.
  • Poruke po stranici- broj poruka prikazanih na jednoj stranici.
  • Sljedeće poruke- poredati prema uzlaznom ili silaznom datumu pisanja poruke.
  • Koža- izgled.

Zapravo, postoji ogroman broj različitih skripte knjiga gostiju. I kad sam ga tražio, pregledao sam najmanje dva tuceta i odlučio se za ovaj iz sljedećih razloga.

Testiranje koda može biti neugodno, ali netestiranje može dovesti do još neugodnijih razloga. U ovom ćemo članku koristiti razvoj vođen testiranjem kako bismo učinkovitije napisali i testirali naš kod.

Što znači razvoj vođen testovima?

Od početka računalnog doba programeri i bugovi bore se za prevlast. Ovo je neizbježna pojava. Čak su i najveći programeri postali žrtve ovih anomalija. Nema sigurnog koda. Zato koristimo testiranje. Programeri, barem neki od njih, testiraju svoj kod tako što ga pokreću na svojim radnim strojevima kako bi bili sigurni da radi ono što bi trebao.

Testom vođen razvoj To je tehnika programiranja koja zahtijeva istovremeno pisanje programskog koda i testova za njega. Ovo osigurava da je vaš kod testiran - i omogućuje vam da testirate svoj kod brzo i jednostavno jer je proces automatiziran.

Kako radi?

Test-driven development ili TDD je kratki, iterativni razvojni ciklus:

  1. Prije nego što napišete bilo koji kod, prvo morate napisati testove za njega. Kada pišete automatizirane testove, morate uzeti u obzir sve moguće ulaze, pogreške i izlaze. Ovim pristupom vaše misli neće biti vezane ni za jedan kod koji je već napisan.
  2. Prvi put kada pokrenete automatizirane testove, oni neće uspjeti, što znači da vaš kôd još nije spreman.
  3. Nakon toga možete početi s programiranjem. Ako već postoji test i postoji kod kojem se može vjerovati, ali testovi i dalje ne uspijevaju, to znači da kod još nije spreman. Kod se može smatrati ispravnim ako prođe sve provjere.
  4. Nakon što kod prođe test, možete ga početi čistiti pomoću refaktoriranja. Sve dok kod prolazi testove, možemo pretpostaviti da i dalje radi ispravno. Više ne morate brinuti o promjenama koje bi mogle dovesti do grešaka.
  5. I opet ponavljamo ovaj ciklus s drugom metodom ili programom.

Super, ali po čemu je ovo bolje od redovnog testiranja?

Jeste li ikada namjerno preskočili testiranje programa jer:

  • Smatrali ste da bi to bio gubitak vremena jer je napravljeno premalo promjena.
  • Jeste li bili lijeni da počnete sve ponovo testirati?
  • Niste imali dovoljno vremena za testiranje jer je voditelj projekta inzistirao na brzom lansiranju?
  • Jeste li obećali da ćete ga testirati sutra?
  • Jeste li na testu odabrali svoju omiljenu TV emisiju?

U većini slučajeva ništa se ne događa i vi uspješno uvedete svoj kod u proizvodnju bez ikakvih problema. Ali ponekad se sve dogodi obrnuto. Pokušavate popraviti tisuće rupa na brodu koji tone, dok se svake minute pojavljuju nove. sigurno ti nije htio bih se našao u sličnoj situaciji.

TDD je stvoren kako bi uklonio naše isprike. Kada je program razvijen pomoću TDD-a, možemo brzo i učinkovito implementirati nove promjene. Sve što trebamo učiniti je pokrenuti automatizirane testove! Ako su svi testovi prošli, onda možemo nastaviti, ako ne, to znači da su naše promjene nešto pokvarile. Znajući koji točno dio testova nije uspio, lako možemo odrediti gdje smo točno u našim izmjenama pokvarili kod i brzo to popraviti.

kupio sam ga. Kako ćemo to učiniti?

Postoje mnogi PHP automatizirani okviri za testiranje koje možemo koristiti. Najrašireniji je PHPUnit.

PHPUnit je prilično moćan okvir za testiranje koji se može lako integrirati u vaše vlastite projekte ili druge projekte izgrađene na temelju popularnih PHP okvira.

Za naše potrebe ne trebamo mnoge značajke koje nudi PHPUnit. Umjesto toga koristit ćemo mnogo jednostavniji okvir SimpleTest.

U sljedećim koracima pretpostavimo da razvijamo aplikaciju knjige gostiju u koju svaki korisnik može dodavati i pregledavati unose. Pretpostavimo da je izgled dovršen i da jednostavno kreiramo klasu koja sadrži logika primjene knjiga gostiju, gdje aplikacija unosi unose i čita ih iz baze podataka. Razviti ćemo i testirati dio koji je zadužen za čitanje.

Korak 1: Postavljanje SimpleTesta

Ovo je možda najlakši korak od svih. Čak bi i ovaj tip to mogao:

Korak 4. Gubite da biste pobijedili

Nakon što završite s pisanjem koda, trebali biste pokrenuti testove. Kada ih prvi put pokrenete definitivno neće uspjeti. Ako to nije slučaj, onda najvjerojatnije vaši testovi zapravo ništa ne testiraju.

Da biste pokrenuli testove, jednostavno otvorite datoteku knjiga_utisaka_test.php u vašem pregledniku. Prvo ćete vidjeti ovo:

To se dogodilo jer još uvijek nismo stvorili razred knjige gostiju. Da biste to učinili, kreirajte datoteku guestbook.php unutar direktorija klasa. Ova će klasa sadržavati metode koje ćemo koristiti, ali još ništa ne sadrži. Upamtite, prvo pišemo testove i zatim kod koje testiramo.

Ako ponovno pokrenete testove, rezultat će izgledati ovako:

Kao što vidimo, naš test i dalje pada. Pokušajmo ponovno riješiti ovaj kvar.

Korak 5. Rješavanje testova pisanjem koda

Sada kada imamo automatizirane testove koji rade, možemo početi pisati kod. Otvorimo razred knjiga gostiju.php i krenimo s rješavanjem našeg testa.

"Kirk", "message" => "Bok, ja sam Kirk."), niz ("ime" => "Ted", "poruka" => "Bok, ja sam Ted.")); javna funkcija viewAll() ( // Ovdje bismo trebali dohvatiti sve zapise iz baze podataka. // Ovo se simulira vraćanjem niza $_entries return self::$_entries; ) javna funkcija add($name, $message) ( // Ovdje simuliramo umetanje u bazu podataka dodavanjem novog zapisa u polje $_entries // Ovo je ispravan način za to: self::$_entries = array("name" => $name, "message" => $message); self::$_entries = array("notname" => $name, "notmessage" => $message); //ups, ovdje negdje postoji greška return true; ) javna funkcija deleteAll() ( // Upravo smo postavili polje $_entries da simulira self::$_entries = array(); return true; ) )

Ova guestbook.php klasa sadrži neke greške koje možemo pronaći kada naši testovi ne uspiju.

Kada pokrenemo testove, vidjet ćemo sljedeće:

Izlaz u testovima pokazuje nam u kojem testu i u kojoj specifičnoj izjavi naš kod ne uspijeva. Odavde možemo lako utvrditi da su iskazi u recima 16 i 17 neuspješni.

assertTrue(isset($entry["name"])); $this->assertTrue(isset($entry["message"])); ... ... ... )

Ovo jasno pokazuje da vraćeno polje ne sadrži važeće ključeve. Na temelju toga sada možemo lako odrediti koji dio našeg koda ne radi ispravno,

$name, "message" => $message); //popravljeno! vratiti istinito; ) ... ... ... )

Sada ponovno pokrenimo naše testove:

Korak 6: Refactoring

Budući da je kôd koji ovdje testiramo prilično jednostavan, naši su ispravci grešaka dovršeni prilično brzo. Ali da je riječ o složenijoj aplikaciji, morali biste napraviti nekoliko promjena u svom kodu kako biste je lakše održavali. Problem je u tome što promjene najčešće uključuju dodatne greške. Tu nam pomažu automatizirani testovi - čim unesemo promjene, jednostavno ponovno pokrećemo testove. Ako ponovno prođu uspješno, to znači da nismo ništa pokvarili. Ako ne uspiju, onda smo negdje pogriješili. Također nam odmah kažu gdje je naša greška, a najvjerojatnije kako se može ispraviti.

Korak 7. Ponovite u krug

Na kraju, kada vaš program zahtijeva novu funkcionalnost, trebate napisati nove testove. To je lako! Ponavljamo postupke iz drugog koraka (budući da je SimpleTest već konfiguriran i instaliran) i krećemo krug ispočetka.

Zaključak

Postoji mnogo članaka na temu razvoja vođenog testovima s dubljim proučavanjem i možda čak i funkcionalnijim alatima od SimpleTest - na primjer lažni objekti, zaglavci, koji pomažu da proces pisanja testova bude još lakši. Ako želite čitati više, Wikipedijina stranica o razvoju vođenom testom uputit će vas u pravom smjeru. Ako planirate nastaviti koristiti SimpleTest kao okvir za testiranje, obratite pozornost na online dokumentaciju i svakako se upoznajte s njegovim dodatnim mogućnostima.

Testiranje je sastavni dio razvojnog ciklusa, no često je izostavljeno zbog rokova. Nadam se da ćete nakon čitanja ovog članka shvatiti važnost ulaganja u razvoj vođen testovima.

Što mislite o razvoju vođenom testovima? Zanima li vas to ili, naprotiv, smatrate da je to obično gubljenje vremena? Pišite u komentarima!

Poredaj po:

  • 1
  • 2

    Bitmixsoft je rumunjska softverska tvrtka i nudi naziv softvera pod nazivom PHP-Jobsite. PHP-Jobsite je softver za oglasnu ploču i uključuje značajke kao što su naplata i fakturiranje, upravljanje popustima/paketima, računi poslodavaca, upravljanje poslovima, mehanizam za podudaranje, objavljivanje životopisa, pretraživanje životopisa i tržište poslova. S obzirom na sistemske zahtjeve, PHP-Jobsite dostupan je kao SaaS softver. Troškovi počinju od 299,00 USD. Neki alternativni proizvodi za PHP-Jobsite uključuju SmartJobBoard, jobiqo i JobMount Job Board Software.

  • 3

    OSI Codes je softverska tvrtka i nudi naziv softvera pod nazivom PHP Live!. PHP uživo! je softver za chat uživo i uključuje značajke kao što su proaktivne pozivnice, prijenosi/usmjeravanja, brandiranje bijele oznake, integracija treće strane, praćenje posjetitelja web stranice, proaktivni chat, dijeljenje zaslona i standardni odgovori. S obzirom na sistemske zahtjeve, PHP Live! dostupan je kao SaaS softver. Troškovi počinju od 9,95 USD mjesečno. Neki alternativni proizvodi za PHP Live! uključuju LiveChat, LiveAgent i Zendesk.

  • 4

    Mailgun je rješenje za automatizaciju e-pošte koje je prikladno za programere. Uz Mailgun korisnici mogu pristupiti kompletnoj usluzi e-pošte temeljenoj na oblaku za praćenje, slanje i primanje e-pošte poslane putem njihovih aplikacija i web stranica. Mailgun podržava nekoliko programskih jezika uključujući Python, Ruby, PHP, Java i C#. Sa značajkom praćenja Mailguna, korisnici mogu pratiti sve e-poruke i smanjiti šanse za dobivanje neželjene pošte.

  • 16

    LifeCubby je web i mobilna platforma temeljena na oblaku napravljena za usluge dokumentacije, komunikacije i procjene za pružatelje usluga ranog djetinjstva. Nudi alate za praćenje školarine, upravljanje rasporedom, listove za pohađanje nastave i dnevnu njegu, planiranje nastave, dnevno izvješće, usklađenost s QRIS-om, među mnogim drugima. Učitelji i domari mogu koristiti posebnu aplikaciju za snimanje informacija s mobilnog uređaja, a roditelji mogu preuzeti posebnu aplikaciju za roditelje kako bi ojačali komunikaciju i pratili...

  • 17

    MedEZ isporučuje potpuno integrirani EHR, jednostavan za korištenje, s kliničkim bilješkama i rješenjima za naplatu za bihevioralno zdravlje, bolničke psihijatrijske ordinacije, ambulante, OIP/ PHP programe i klinike za ovisnosti. MedEZ platforma uključuje postavljanje termina, kliničke bilješke, naplatu i upravljanje dokumentima. MedEZ ima značajke ljekarni, Med inventara, izdavanja, MARS-a i e-ljekarne, kao i učinkovito rukovanje potrebnom dokumentacijom i izvješćivanjem. Dizajniran je za vaš objekt.

  • 18

    Kompletan računovodstveni i ERP sustav s izvornim kodom i pravima na distribuciju i hosting bez naknade za PHP i MySQL platforme. Softver je potpuno moderan i responzivan, bootstrap i MVC. Uključene su sve osnovne računovodstvene i ERP funkcije, GL, AR, AP, CRM, MRP i košarica. Mogućnosti prikaza na više jezika, više valuta i LTR i RTL. Demo snimke uživo dostupne na stfb.com

  • 19

    Ovo je moćan program s novim korisničkim sučeljem, softverom koji je jednostavan za korištenje za upravljanje skladišnim inventarom s kupcima, dobavljačima, proizvodima i automatskim obračunom zaliha. Ima pregledno sučelje najnovije generacije. Uvijek vidljiv skladišni inventar s utovarom i istovarom, zalihama proizvoda i količinama za naručivanje. Možete ga isprobati preuzimanjem programa za postavljanje putem ove poveznice: www.rgpsoft.com/software/calus. php

  • 20

Najbolji članci na temu