Kezdőoldal » Számítástechnika » Programozás » 2 db adattáblából hogy tudom...

Ragua kérdése:

2 db adattáblából hogy tudom kiolvasni a dolgokat? (részletek lent)

Figyelt kérdés

Tehát van 2 táblám a MySQL-ben, mondjuk így néz ki:

1. tábla:

érték1 érték2 érték3 érték4

5 8 350 720

5 9 300 650

6 4 150 200

7 4 500 950


2. tábla

sorszam nev telefon

(1. tábla érték1 értékei) név 0630....


Nah az a gondom, hogy az egyik oldalon beviszem az adatokat az 1. táblába, a másik oldalon a 2. táblás dolgokat, viszont nem tudom, hogy hogy tudom úgy visszakérni az adatokat, hogy a 2.tábla sorszam oszlop értékeit megcsinálom gomboknak, és ha rákattint, akkor az összes olyan sort kiírassa a php, amelyiknek az értéke megegyezik.

Nem tudom hogy ez így mennyire volt érthető, linkelek hozzá kódrészt is, hátha érthetőbb lesz :)


$tulaj = mysql_query("SELECT * FROM tulajdonosok;");

while ($szortir = mysql_fetch_assoc($tulaj)){

echo "<a href=\"tulajdonosok/tulajdonos_".$szortir['sorszam'].".php\"><input type=\"button\" value=\"".$szortir['sorszam']."; ".$szortir['tulajdonos']."\" /><br /></a>";



Nah ez a kód csinálja meg nekem a gombokat, amikre ha rákattint az illető, akkor a gombon levő szám szerint listázza ki az adatbázisban levő adatokat.

Remélem hogy azért így érthetőbb mire akarok kilyukadni :)



Másik kérdésem a MySQL-el kapcsolatos. Hogy tudom megcsinálni azt, hogy mikor nem írnak be sorszámot az emberhez, akkor a progi automatikusan egy üres helyre írja be, és ne az utolsót folytassa? (phpmyadminban az A_I ki van pipálva arra az ozslopra)



2012. dec. 29. 00:21
 1/7 anonim ***** válasza:

Az elsőhöz: légy szíves, írd le normálisan a két tábla nevét, a mezők nevét, a kulcsokat és a kapcsolatot.


A második kérdés zavaros. Még azt sem írtad le, mi az alapműködés, amihez képest eltérnek. Ha azt akarod, hogy a sorszám nélküli beíráshoz új rekord tartozzék, akkor az nem MySQL, hanem PHP, ott kell az elágazást megcsinálni, nem a lekérdezésben.


Sokkal jobb lenne, ha szakkifejezéseket használnál, mert az "üres helyre rakja be" sok mindent jelenthet az életben, de adatbázis-kezelés kapcsán semmiképpen sem szabatos vagy egyértelmű.

[link]

2012. dec. 29. 08:04
Hasznos számodra ez a válasz?
 2/7 Drone007 ***** válasza:

Úgy érzem, hogy nem igazán látod át, hogy mi is a PHP lényege. külön php fájlokba kiszervezni az ilyen lekérdezéseket felesleges munka. Pont ezért találták ki a php-t, hogy ne kelljen minden "oldalhoz" külön megírni a html fájlokat.

A helyes megoldás az, ha ugyanaz a php fájl végzi az adatkijelzést az átadott paraméterek alapján. A paramétereket lehet $_GET vagy $_POST metódussal átadni.


A mysql adattáblákhoz fontos konvenció - amit érdemes követni - hogy oszlopoktól függetlenül legyen egy id nevű elsődleges (PRIMARY KEY) oszlop, aminek a tartalma INT(10) és automatikusan növekszik (AUTO INCREMENT). Ez az oszlop az adott tábla minden sorát egyedileg azonosítja, hivatkozási alapot biztosítva a többi táblának.


Az input elemeket anchor tag-be zárni nemcsak felesleges, de szabálytalan megoldás is.

Én a választható elemeket inkább egy select elembe szervezném, de ez nagyban függ attól hol és hogyan akarod ezt megjeleníteni.


$_GET példa:

$tulaj = mysql_query("SELECT * FROM tulajdonosok;");

while ($szortir = mysql_fetch_assoc($tulaj)){

echo '<a href="kijelez.php?id='.$szortir['id'].'">'.$szortir['tulajdonos'].'</a><br />';

}

--- megkapott paraméter:

$_GET["id"]


$_POST példa:

$tulaj = mysql_query("SELECT * FROM tulajdonosok;");

echo '<form method="post" action="kijelez.php">';

echo '<select name="id">';

while ($szortir = mysql_fetch_assoc($tulaj)){

echo '<option value="'.$szortir['id'].'">'.$szortir['tulajdonos'].'</option>';

}

echo '</select>';

echo '<input type="submit" name="send" value="Kiválaszt" />';

echo '</form>';

--- megkapott paraméter:

$_POST["id"]



Ezek nagyon alap példák, de kiindulhatsz belőlük. A paraméterben megkapott adat alapján aztán a kijelez.php már felépítheti a megfelelő lekérdezést, és az alapján az oldal tartalmat.


Sok sikert!

2012. dec. 29. 10:57
Hasznos számodra ez a válasz?
 3/7 A kérdező kommentje:

Drone007

Köszönöm szépen, nekem a $_POST verzió tökéletesen megfelelt, és működik is:)

amúgy <a> tagbe lehet rakni <button>-t?

2013. jan. 1. 22:47
 4/7 Drone007 ***** válasza:

Miért szeretnél <a> tage-be <button> tag-et tenni? Mindkettőnek megvan a maga funkciója, és egymás funkcióját önmagukban képesek szimulálni - ha nagyon muszáj.

A button tag-et az onclick eseménnyel ráveheted arra, hogy megnyisson egy másik oldalt (kis javascript segítségével)

Az anchor tag-et, pedig némi css formázással át tudod alakítani, hogy úgy nézzen ki mint egy gomb.

2013. jan. 2. 09:01
Hasznos számodra ez a válasz?
 5/7 A kérdező kommentje:

egy sima alap css példát tudnál írni?

folyamatosan tanulom a webprogramozást, de elég gyors iramban haladunk, így nem veszünk mindent részletesen (a javascriptet pl csak átfutottuk).

2013. jan. 2. 23:46
 6/7 Drone007 ***** válasza:

Rövid példák:


Button + Js :

<button type="button" onclick="self.location='http://www.google.com/';">Kattints!</button>


Anchor:

<a href="http://www.google.com/" class="button">Kattints!</a>


CSS:

a.button {

diplay: inline-block;

margin: 2px;

padding: 2px 5px;

border: 1px solid #CCC;

background: #666;

color: #FFF;

font-weight: bold;

}

a.button:hover {

color: #FC0;

}


A css-t persze még egyedileg lehet formázgatni, hogy olyan kinézetű gombot kapj, amilyet szeretnél (akár a button esetében is). Javaslom próbálgasd, tesztelgesd, akár a w3schools.com oldalán!

http://www.w3schools.com/tags/

2013. jan. 3. 09:49
Hasznos számodra ez a válasz?
 7/7 A kérdező kommentje:

Köszi az infót, ezek ideiglenesen megfelelnek, localhoston üzemelő leltárhoz kell még csak, de ha belejövök, akkor sztem fogom használni a neten is:)

Köszi a segítséget :)

2013. jan. 3. 23:03

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!