» »

Kako zaceti z PHP in MySQL

Kako zaceti z PHP in MySQL

Reycis ::

Jaz bi rad pomoc za izdelavo preprostega search engine-a z PHPjem in bazo MySQL. Bolj kot vodič kako se to naredi bi bil zadovoljen z URL naslovi, ki pokažejo kako se skonfigurira MySQL in kaka dobra zbirka primerčkov.
Imam pa še eno konkretno vprašanje. Kako se s PHPjem bere QueryStringe in sicer obe obliki (tiste ki jih postaš in tisti ki so pripei na koncu URLja).V ASP-ju zadeva zgleda takole:MojaVariabla1 = Request.Form("Variabla1")MojaVariabla2 = Request.QueryString("MojaVariabla2")Hvala za informacije

IceIceBaby ::


www.hotscripts.com


Tuki mas pod sekcijo php velik dobrih tutorialov za php in mysql in kako se vsa stvar skonfigurira v vseh možnih platformah itd.

darh ::

link le mal napacen....

http://www.hotscripts.com/
evo...
Excuses are useless! Results are priceless!

yimi ::

ce rabis samo ukaz za iskanje besed v celicah je naprimer:
SELECT * FROM tabela WHERE stolpič LIKE '%iskana_beseda%';

Reycis ::

Hvala x-bajtu za odgovore. Kar pa se SQL stavka tiče je zadeva pri Mikrosoftu in pri MySQL ista (vsaj jaz še nisem opazil nobene razlike) in SQL ni problem. Sicer mislim,da me je YIMI malo slabo razumel. Moje vprašanje je bilo kako prebral nek querystring. Bom dal bolj natančen primer:
http://www.iskalnik.com/search.asp?sear... ASP potem zadeva zgleda takole:MojaVariabla2 = Request.QueryString("search") v tem primeru se potem v MojaVariabla2 zapiše vrednost "tralala"

Primoz ::

enostavno imaš zadevo v $search.....

There can be no real freedom without the freedom to fail.

Reycis ::

Da nadaljujem...Kaksen je najenostavnejsi tip baze, ki jo je mozno uporabit na linuksu. Ali je mozno da je baza samo nekaksna "MDB" datoteka? Imam namrec polni FTP dostop do streznika vendar pa nimam Telnet dostopa. Rad bi naredil enostaven search. Če slučajno že ima kdo narejenega kaj podobnega se priporočam.Še eno malenkost sem pozabil. Kako pa je z prenosi podatkov med različnimi bazami? Recimo iz perl v MySQL?

crt ::

Imam en php iskalnik(home-made)... Kako deluje pa si lahko pogledas na www.kcsk-sezana.si poglej zgoraj pise iskanje...

lp Crt

Reycis ::

Sem zelo zainteresiran. Predvsem mi je vsec enostavnost zadeve. Če pri svojem delu uporablja še MySQL sem že zelo zainteresiran. Če je možno mi jo pošlji na moj e-mail.

Tr0n ::

Napise se "Kako zaceti s PHP in MySQL".

Reycis ::

Vedno se najdejo takšni kot TrOn. Svet jih je poln. No pa ni to moj namen, da pišem tale post.Ne dvomim, da je med vami kar nekaj SQL strokovnjakov. Imam eno vprašanje za SQL stavek. Rad bi odprl recordset recimo: SELECT * FROM MyTable WHERE Str = "nekaj" ORDER BY ID vendar pa bi rad na konec tega recordseta dodal še vse zapise, ki ustrezajo temu pogoju: SELECT * FROM MyTable Where Str = "nekajdrugega" ORDER BY ID. Da poenostavim zadevo. Želim odpreti tak recordset kjer bodo na začetku razvrščeni vsi recordi ki ustrezajo pogoju "nekaj" razvrščenih po ID-ju. Nadaljuje pa naj se z vsemi recordi ki ustrezajo pogoju "nekajdrugega" prav tako razvrščenih po IDju. Vem, da so opcije, da bi enostavno odprl dva recordseta vendar to bistveno zakomplicira mojo situacijo. Če kdo pozna rešitev na kak način to joinat skupaj se priporočam.LP Majk

yimi ::

torej....to bo pa bol težko mogoče pa poznam kakšno rešitev. Npr

napiši SELECT * FROM nekje WHERE neki='1pogoj' AND še_neki='2pogoj' AND čas=(NOW()) ORDER BY id;

žal...še vedno se ureja preko ideja...drugače pa naredi pač 2 querija...

Reycis ::

Pa pojdimo naprej:Problem imam z nastavitvijo indeksa za textovna polja v MySQL bazi. Ali je to ze kdo videl ali slisal? Jaz dobivam tole napako:BLOB column 'KeyWord' used in key specification without a key length Vsi predlogi in zamisli zaželjeni

yimi ::

jst bloba ne uporabljam...zato ne vem točno.
Priporočam ti, da uporabljaš VARCHAR in TEXT. Pri VARCHAR morš še seveda napisat dolžino(od 1 - 255) pri TEXT pa ni treba.
Drgač pa si poglej tole: (to je primer iz mojga foruma)

CREATE TABLE debate (
id tinyint(8) DEFAULT '0' NOT NULL auto_increment,
naslov text NOT NULL,
avtor text NOT NULL,
sporocilo text NOT NULL,
tema varchar(32) NOT NULL,
cas datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
ikona char(2) NOT NULL,
ogledov varchar(32) DEFAULT '0' NOT NULL,
PRIMARY KEY (id),
KEY id (id)
);

darh ::

a ni to mal zapravljanje BAJTou... :)

jest pa ful sparam z usem.... like this:





CREATE TABLE board_replays
(

id INT UNSIGNED NOT NULL AUTO_INCREMENT,
post_id INT UNSIGNED NOT NULL,
forum_id INT UNSIGNED NOT NULL,
active TINYINT UNSIGNED DEFAULT '1',
author CHAR(16) NOT NULL,
date INT UNSIGNED NOT NULL,
contents TEXT NOT NULL,

PRIMARY KEY(id)
)
Excuses are useless! Results are priceless!

Reycis ::

Da dodam se eno zelo enostavno vprasanje...V bazi imam polje tipa DATE. Kako naj sestavim spremenljivko (imam 3 stringe v katerih je zapisan dan, mesec, leto) da bom lhako dal search SELECT * FROM nekje WHERE Datum > MojDatumDejmo strokovnjaki

simon ::

Malo si poglej Mysql dokumentacijo na to temo, predvsem v kaksnem formatu podajas bazi datume. Spremenljivke bos pa ze znal premetati tako da bo prav;)

darh ::

ne vem... men se zdi ful bl ql delat sam s sekundam.... polje DATE das lepo INT pa pol shranis sekunde notr... res da ma SQL svoje tipe polj za čas in datum... sam je velik lazje delat sam s sekundam...
Excuses are useless! Results are priceless!

Reycis ::

Kako pa se dobi sekundno vrednost. Sej najbrz je samo ena funkcija... ampak me zanima. Sicer pa sem zelel le enostaven odgovor v nacinu: " SELECT * FROM Nekje WHERE Date => '2001-01-01'". MySQL dokumentacija na to temo mi ni ponudila odgovora. Simon je predvideval da bom spremenljivke pa ze sam znal premtati... ampak ravno to je bilo moje vprasanje. Kako naj pripravim spremenljivko za tak query?

Tr0n ::

xbite: to je resitev, ki ni ravno optimalna. Zadeva deluje hitreje ce uporabis ustrezen tip (timestamp, datetime) in ne int ali varchar. Dokazano.

simon ::

Ce imas tri spremenljivke $dan,$mesec,$leto bi sql napisal v perlu tako:

$SQL="select * from nekje where datum > $leto$mesec$dan"; v php-ju mora biti nekaj podobnega . V glavnem zdruzi te tri spremenljivke v zaporedju leto mesec dan in jo das v sql stavek kot string. Kaksno sekundno vrednost bi pa rad dobil? Ce imas definiran stolpec v bazi kot DATE je ne bos dobil ker se shranjujejo samo leto mesec in dan. Ce hoces se sekunde mora biti stolpec DATETIME ali TIMESTAMP.

Immz ::

hm spreminja vse v sekunde, zapises v bazo in nato, ko naredis klic na bazo, potem zopet poklices funkcijo, ki ti zopet pretvori v date format. Torej skini to takoj pa date zapisuj noter, ker to je glupost. Glede velikosti baze in optimiranje njenih polj je pa dobro uporablati za vse vrste tekstov varchar, ker ti avtomaticno trima space, ce pa imas vec kot 255 pa pac uporabis text.

simon ::

Glede na to, da ima mysql kopico funkcij za operacije s casom, se verjetno ne izplaca pisati svojih, razen ce mislis, da so tvoje hitrejse oz. ti kaksna manjka. To z varcharom pa se strinjam, preverjeno je hitrejse.


Vredno ogleda ...

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

Myslq index ne deluje???

Oddelek: Izdelava spletišč
172200 (1978) algo
»

php skripta za registracijo uporabnikov

Oddelek: Izdelava spletišč
162080 (1661) skorpio
»

portal ostal, baza sla

Oddelek: Izdelava spletišč
61826 (1711) bombacina
»

SQL problem

Oddelek: Programiranje
91519 (1356) Bossek
»

mySQL(+php) auto_increment field v tabeli.. Kako...?

Oddelek: Izdelava spletišč
61103 (1035) Zzzzzzz

Več podobnih tem