track
23.08.2003, 18:18:24
Mam taki problem. Chce stworzy system rozgrywek ktory bedzie sie sam aktualizowal. Na poczatku jest formularz ktory wypisuje wszystkie dane spelniajace warunek numeru kolejki.
[php:1:3b4ee733a6]
$ask = "SELECT * FROM mecze WHERE kolejka = '1' ";
$do = mysql_query($ask);
while($pole = mysql_fetch_array($do))
{
echo "$pole[gosc] - $pole[gospodarz] --- <input type=text name='gole_gosc' value='$pole[gole_gosc]'><input type=text name='gole_gospodarz' value='$pole[gole_gospodarz]>$pole[gole_gospodarz] ";
}
[/php:1:3b4ee733a6]
Powyzsze dane oczywiscie sa zawarte w pormularzu method=post.
Problemem jest teraz uaktualnienie danych. Po wpisaniu nowych wartosci w pola gole_gospodarz i gole_gosc chce je uaktualnic w w/w tabeli. Niestety nie wiem jak to zrobic. Macie jakies pomysly?
Drugiem problemem bedzie uaktualnianie tabeli rozgrywek, ale tym bede sie bawil jak skoncze, to oczym napisalem wyzej. Z gory dziekuje za pomoc.
Pozdrawiam...
nobody
23.08.2003, 18:34:56
Formularz:
Kod
<HTML>
<HEAD>
</HEAD>
<BODY>
<FORM ACTION="update.php" METHOD="post">
Zmien pola o id: <INPUT TYPE="TEXT" NAME="id"><BR>
Zmien pole gole_gospodzarz na: <INPUT TYPE="TEXT" NAME="gosp"><BR>
oraz pole gole_gosc na: <INPUT TYPE="TEXT" NAME="gosc"><BR><INPUT TYPE="submit" VALUE="Zmien"></FORM>
</BODY>
</HTML>
Plik update.php
[php:1:d948a22fb4]<?php
//polaczenie z baza
//wybor bazy
if(!is_numeric($id)){
die("Niepoprawne id!");
}
mysql_query("UPDATE nazwa_tabeli SET gole_gosc='$gosc', gole_gospodarz='$gosp' WHERE kolejka='$id'");
//cos tam dalej
?>[/php:1:d948a22fb4]
Pozdro.
track
24.08.2003, 00:43:58
Problem w tym, ze ja najpierw wyciagam przykladowo 7 wpisow z bazy, ktore maja identyczny numer kolejki, ale rozne drozyny. Jesli kazde nazwe identycznie, nie bedzie to mialo sensu, bo wszystkie pola przejma wartosc ostatnich petli. Jak zrobic to w inny sposob?
sivyer
25.08.2003, 05:57:55
Zrob sobie w tabeli dodatkowe poli identyfikujace jednoznacznie dany mecz:
Tabela "mecze":
[sql:1:570c632d78]
meczID
kolejka
gospodarz
gosc
pkt_gosp
pkt_gosc
[/sql:1:570c632d78]
Wtedy formularz do aktualizacji wynikow:
[php:1:570c632d78]
// Formularz do wpisywania wynikow
<form action=update.php method=post>
<?php
// pobierz wszystkie mecze z danej kolejki
$res = mysql_query("SELECT * FROM mecze WHERE kolejka=1") or die(mysql_error());
while( $row = mysql_fetch_array($res) ) {
echo "Mecz ".$row[0].": <input type=text name=wynikA[] size=2>:<input type=wynikB[] size=2><input type=hidden name=meczID[] value=".$row[0]."><br>";
}
?>
<input type=submit value=OK>
</form>
[/php:1:570c632d78]
[php:1:570c632d78]
<?php
// Aktualizacja
for( $i=0; $i<count($_POST['wynikA']); $i++ ) {
mysql_query("UPDATE mecze SET pkt_gosp=".$_POST['wynikA'][$i].", pkt_gosc=".$_POST['wynikB'][$i]." WHERE meczID=".$_POST['meczID']."") or die(mysql_error());
}
?>[/php:1:570c632d78]
Pisane z glowy, ale mniej wiecej tak to powinno dzialac
--
edycja: uzupelnienia pola hidden o wartosc $row[0]
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.