| Bogdan1234435 a întrebat:

as avea o mica intrebare.
Imi fac un nou site si as vrea sa stiu daca este vre unul care stie ceva cod php care sa faca ceva de genul asta:
daca exista o categorie in baza de date sa o arate aici, daca nu sa nu a arate de loc.

Răspuns Câştigător
anonim_4396
| anonim_4396 a răspuns:

Hai sa-ti dau un exemplu mai concret, iar apoi aplici tu la ce ai. Sa luam ca exemplu site-ul TPU.ro
Are si el categorii.
Si sa zicem ca vrem sa afiseze toate intrebarile de la categoria Tehnologie.

Iar in mod normal asa se procedeaza. Iti voi mai repeta pe scurt niste pasi.
-faci conexiunea cu baza de date
-selectezi baza de date
- executi o interograre cu baza de date, adica asa ceva: $result=mysql_query("SELECT * FROM intrebari WHERE categorie='tehnologie' ");
Iar acum(in functie de ce field-uri ai in tabel/coloane) afisezi ce-ti trebuie.
SELECT *, *(steluta) inseamna ca selecteaza ALL, totul de pe rand, toate field-urile.
Cat timp exista rand in tabel care se supune interogarii tale afisezi ce te intereseaza.
Randul il notez cu o variabila $row.
while($row=mysql_fetch_array($result, MYSQL_ASSOC)) {
echo $row['intrebare'];
echo $['user_posesor_intrebare'];
//Cam asa ceva. Eu iti spun asa cat mai simplu cum ai gandi. Acum design-ul e partea a 2-a. Te mai documentezi si tu.
}

| Bogdan1234435 explică (pentru anonim_4396):

Multumesc, dar tot imi afiseaza si celalalte post-uri din celalalte categori. ce sa fac?

16 răspunsuri:
| WoaDmulL a răspuns:

Adica? Fii te rog mai explicit!

anonim_4396
| anonim_4396 a răspuns:

Uite, iti trebuie ceva de genul asta:
- faci conexiunea cu baza de date
mysql_connect(locatie, nume, parola);
- selectezi baza de date
mysql_select_db(baza de date care cuprinde acele tabele);
- iei o variabila pe care o botezezi $query = "SELECT * FROM tabelul_care_iti_trebuie WHERE category= 'categoria_care_iti_trebuie' ";
apelezi functia asta speciala/magica(cum ii zice): mysql_query($query);

Cam asa ceva ai de facut.

| Bogdan1234435 explică (pentru anonim_4396):

Multumes de ajutor, dar nu prea am inteles, ai pute te rog frumos sa imi dai un exemplu

| 1Mihai1 a răspuns:

Ucoz?

| Bogdan1234435 explică:

Scuze.
Deci am o baza de date mySQL si in ia am 2 tabele intr-unul dintre tabele am
6 fields-uri: post_id, title, blog_entry, updated, category si page.
Am creat un CMS dupa tutorialul celor de la Adobe:
obe.com/devnet/dreamweaver/articles/first_dynamic_site_pt1.html
obe.com/devnet/dreamweaver/articles/first_dynamic_site_pt2.html
obe.com/devnet/dreamweaver/articles/first_dynamic_site_pt3.html,
si dupa acea am mai adaugat ultimele 2 filds.
intrebarea mea ar fi:
Daca s-ar putea ca pe o pagina sa am toate posts-urile din categoria "x",
si daca da v-as ruga foarte frumos sa postati un cod php astfel incat sa imi pot termina site-ul.

Multumiri anticipate,
Bogdan

| Bogdan1234435 explică:

Acum imi da urmatoarea eroare:
Notice: Undefined variable: post_id in D:\XAMPP\htdocs\OrigiTuts\pages\tutorials\tuts_contentarea.php on line 62
************************************
linia 62 suna cam asa:
echo $post_id;}?>

********************************
ai putea sa ma ajuti inca un pic.

| anonim_4396 a răspuns (pentru Bogdan1234435):

Variabila $post_id nu are o initializare/valoare. N-ai salvat nimic in ea. Practic afisezi ceva definit nul pentru prima data. Ceva de genul asta.

| Bogdan1234435 explică (pentru anonim_4396):

Si cum as putea lega $post_id la baza de date.

| anonim_4396 a răspuns (pentru Bogdan1234435):

$post_id = $row['post_id']; In interiorul ciclului while. Ar merge si asa. Daca tot nu intelegi, nu-ti iese, inseamna ca nu prea stii multe despre PHP. Atunci mai documenteaza-te pe net. Iti recomand site-ul www.w3schools.com

| Bogdan1234435 explică (pentru anonim_4396):

Ce ar fi daca mi-ai da e-mail-ul tau sa iti trimit arhiva site-ului si sa ma ajuti cu acesta

| anonim_4396 a răspuns (pentru Bogdan1234435):

Nu prea e corect. Ideea e ca tu sa inveti sa faci treaba asta, nu sa ti-o faca altul. Intra pe site-ul acela(ti-am lasat link aseara) si ai acolo multe explicatii si exemple. Daca nu-ti place engleza atunci gasesti multe tutoriale in romana. Google it!

Azi nici nu prea am timp de stat. Ar trebui sa-ti mearga, dar nu stiu ce ai inteles tu si ce ai scris. Cauta pe net despre PHP, MySQL... apuca-te sa le inveti, ca sa le intelegi, apoi te bagi pe facut un asemenea site. La ce prajesti oua daca n-ai ulei?

| Bogdan1234435 explică (pentru anonim_4396):

Am intrat dar nu prea am gasit ceva, plus ca dupa ce fac cum imi spui tu tot imi arata si celalate posturi din celalate categori. CE SA FAC?

| anonim_4396 a răspuns (pentru Bogdan1234435):

Http://w3schools.com/php/php_mysql_where.asp

N-ai cum sa nu intelegi de acolo. E fix ce-ti trebuie tie, numai ca in loc de categorie e altceva. Principiul e acelasi!

| Bogdan1234435 explică (pentru anonim_4396):

Scuze asta nu am vazut-o

| Bogdan1234435 explică:

Si cum as putea sa "leg" de post_id din tabelul meu?