Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wybieranie i wstawianie, PHP oraz MySQL
Początkujący_
post 10.06.2005, 06:12:28
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 6.06.2005

Ostrzeżenie: (30%)
XX---


Witam.
Mam w bazie danych trzy tabele:
Ocena->ocena,ocena_slownie;
Przedmiot->symbol,przedmiot;
StopnieUczniow->id,przedmiot,ocena

Chcę zrobić teraz coś takiego aby mieć dwie listy wybru, w pierwszej wybierać przedmiot a w drugiej ocenę (oczywiście te wartości z odpowiednich tabeli) i zapisać te wartości do trzeciej tabeli.
Doszedłem do czegoś takiego, ale niestety nie działa. POMOCY!

<?
session_start();

echo "<h1>Obsada przedmiotów</h1>";
if(session_is_registered("prawid_uzyt"))
{
$connection = mysql_connect("localhost", $legitymacja , $haslo );
mysql_select_db("szkola", $connection);
if ($co == 'dodaj')
{
if ($d1 && $d1)
{
$query = "insert into stopnieuczniow (id, ocena, ocena_slownie) values ('', '$d1', '$d2')";
$wynik = mysql_query ($query, $connection);
}
}
$wynik = mysql_query ("SELECT * FROM przedmiot", $connection) or die ("błąd w pytaniu");
$wynik2 = mysql_query ("SELECT * FROM ocena", $connection) or die ("błąd w pytaniu");

Print "<form method=\"POST\" name=\"co\" value=\"dodaj\"><p>
<select size=\"1\" name=\"D1\" >";
while ($rekord = mysql_fetch_row ($wynik))
{
$symbol = $rekord[1];
Print "<option>$symbol</option>\n";
}
print "</select><select size=\"1\" name=\"D2\">";
while ($rekord2 = mysql_fetch_row ($wynik2))
{
$ocena = $rekord2[1];
Print "<option>$ocena</option>\n";
}
print "</select><input type=\"submit\" value=\"Zrób to\" name=\"B1\"></p></form>";
}
echo "<a href=\"uwierz_glowny.php\">Powrót do strony głównej</a>";
?>
Go to the top of the page
+Quote Post
SongoQ
post 10.06.2005, 08:54:32
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


OK czyli brakuje Ci tylko zapisu do tabeli wiazacej.

Ja bym zrobil troszeczke inaczej ze w tabeli StopnieUczniow masz id, id_przedmiot,id_ocena

i tam bym zapisywal id wybranych ocen i przedmiotow.


--------------------
Go to the top of the page
+Quote Post
Początkujący_
post 10.06.2005, 09:57:31
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 6.06.2005

Ostrzeżenie: (30%)
XX---


Dzięki.
Już poradziłem sobie snitch.gif
Ale czy wie ktoś może jak zrobić aby w polu listy w jednym wierszu wyświetlały się dwie wartości z tabeli?
Konkretnie chodzi mi o to, że w tabeli mam dwie kolumny: Imię i Nazwisko
Jak zrobić aby na liście obok imienia było wyświetlone jednocześnie nazwisko?
Go to the top of the page
+Quote Post
Darill
post 10.06.2005, 10:23:37
Post #4





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 15.03.2005

Ostrzeżenie: (0%)
-----


bylo by milo jak bys podal konkretny scryp ...

prawdopodobnie bedzie tak
$sql = "SELECT imie, nazwisko FROM $tablela ";

$result = @mysql_query($sql);

while ($row = mysql_fetch_array($result)) {
$imie = $row['imie'];
$nazwisko = $row['nazwisko'];

$wynik .= "$nazwisko, $imie, <br>";
}

cool.gif

Ten post edytował Darill 10.06.2005, 10:24:08
Go to the top of the page
+Quote Post
Początkujący_
post 10.06.2005, 12:33:54
Post #5





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 6.06.2005

Ostrzeżenie: (30%)
XX---


Mam tabelę o nazwie nauczyciel a w niej trzy kolumy: pesel_n, nazwisko, imię.
Jak zmodyfikować ten skrypt aby w liście wyboru mieć nazwisko oraz imię a nie tylko pesel?

function selectDistinct ($connection)
{
$distinctQuery = "SELECT DISTINCT pesel_n FROM nauczyciel";
$resultId = @ mysql_query ($distinctQuery, $connection);
$i = 0;
while ($row = @ mysql_fetch_array($resultId))
$resultBuffer[$i++] = $row[pesel_n];

echo "\n<select name=\"a1\">";
foreach ($resultBuffer as $result)
echo "\n\t<option>$result";
echo "\n</select>";
}
echo "\n Nauczyciel: ";
selectDistinct($connection, "a1");
Go to the top of the page
+Quote Post
SongoQ
post 10.06.2005, 19:00:33
Post #6





Grupa: Przyjaciele php.pl
Postów: 2 923
Pomógł: 9
Dołączył: 25.10.2004
Skąd: Rzeszów - studia / Warszawa - praca

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. function selectDistinct ($connection)
  4. {
  5. $distinctQuery = &#092;"SELECT DISTINCT nazwisko, imie FROM nauczyciel\";
  6. $resultId = @ mysql_query ($distinctQuery, $connection);
  7. $i = 0;
  8. while ($row = @ mysql_fetch_array($resultId))
  9. $resultBuffer[$i++] = $row['.nazwisko.'].' '.$row['.imie.'];
  10.  
  11. echo &#092;"n<select name=\"a1\">\";
  12. foreach ($resultBuffer as $result)
  13. echo &#092;"nt<option>$result\";
  14. echo &#092;"n</select>\";
  15. }
  16. echo &#092;"n Nauczyciel: \";
  17. selectDistinct($connection, &#092;"a1\");
  18.  
  19. ?>


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 07:54