|
|
|
|
|
|
|
|
forum.webPC.pl
|
|
|
|
Rejestracja ::
Zaloguj
|
Zaloguj się, by sprawdzić wiadomości
|
|
|
|
Problem z przekazywaniem danych |
> Zobacz poprzedni temat :: Zobacz następny temat --> |
Autor |
Wiadomość
|
Lewand |
Wysłany: Sob Cze 11, 2005 10:24 pm Temat postu: Problem z przekazywaniem danych |
|
|
Moderator
Dołączył: 27 Kwi 2005 Posty: 29 Skąd: z sieci
|
Otóż mój problem z mojego punktu widzenia jest dość prosty, ale nie mogę wpaść na jego rozwiązanie. Pobieram dane z bazy dancy za pomocą pętli while i przedstawiam na www, do której tylko ja mam dostęp. Dane są przedstawione w formie tabeli. Przy kazdmy z przedstawionych redordow jest pole typu checkbox. Po zaznaczeniu jednego pola moge modyfikowac dane z zaznaczonego rekordu. I tutaj pojawia sie problem, otoz nie moge przekazac id po ktorym rekord jest identyfikowany w bazie danych (MySQL). Nie wiem dlaczego. Prosze o wyjasnienie mi tego problemu i rozwiazania jego. Jezeli kod tego wszystkiego bedzie potrzebny prosze napisac. _________________ Zapraszam na www.komputerpc.pl |
|
Powrót do góry |
|
|
Lewand |
Wysłany: Pon Cze 13, 2005 4:41 pm Temat postu: |
|
|
Moderator
Dołączył: 27 Kwi 2005 Posty: 29 Skąd: z sieci
|
plik uzytkownicy.php
Kod: |
<?php
if(isset($HTTP_SESSION_VARS['zmienna']))
{
$plik = 'ble ble';
$wskaznik = fopen ($plik, "r");
$string = fread ($wskaznik, filesize($plik));
$haslo = $string;
$polacz = mysql_connect ('localhost', 'ml', $haslo);
if(!$polacz)
{
print '<h2 class="tyt">Błąd!</h2>';
print '<p class="tr">Połączenie z bazą danych nie powiodło się, skontaktuj się z <a href="">administratrem.</p>';
exit;
}
$wybor = mysql_select_db ('ml');
if(!$wybor)
{
print '<h2 class="tyt">Błąd!</h2>';
print '<p class="tr">Wybór bazy danych nie powiódł się, skontaktuj się z <a href="">administratrem.</p>';
exit;
}
$zapytanie = "select id_uzytkownika, login, haslo, kontakt, imie, nazwisko from uzytkownicy";
if(!$zapytanie)
{
print '<h2 class="tyt">Błąd!</h2>';
print '<p class="tr">Zapytanie nie powiodło się, skontaktuj się z <a href="">administratorem.</p>';
exit;
}
$rezultat = mysql_query ($zapytanie);
?>
<form action="modyfikuj.php" method="post">
<table width="1000px">
<tr style="background:#0066cc; font-weight:bold; text-align:center;"><td>Zaznacz</td><td>Id_uzytkownika</td><td>Login</td><td>Hasło</td><td>E-mail</td><td>Imię</td><td>Nazwisko</td></tr>
<?php
while ($wartosc = mysql_fetch_array($rezultat, MYSQL_ASSOC))
{
$id_uzytkownika = $wartosc['id_uzytkownika']. "";
$login = $wartosc['login']. "";
$haslo = $wartosc['haslo']. "";
$kontakt = $wartosc['kontakt']. "";
$imie = $wartosc['imie']. "";
$nazwisko = $wartosc['nazwisko'];
?>
<tr style="text-align:center; background:#99cccc;"><td><input type="checkbox" name="uzytkownik" value="<?php print $id_uzytkownika;?>"></td><td><?php print $id_komentarza;?></td><td><?php print $login; ?></td><td><?php print $haslo; ?></td><td><?php print $kontakt; ?></td><td><?php print $imie; ?></td><td><?php print $nazwisko; ?></td></tr>
<?php
}
?>
<tr><td><input type="submit" value="Modyfikuj"></td></tr>
</table>
</form>
<?php
}
else
{
?>
<h2 class="tyt">Odmowa dostępu</h2>
<p class="tr">Nie jesteś uprawniony do przeglądania tych zasobów.</p>
<?php
}
?>
|
plik modyfikuj.php
Kod: |
<?php
if(isset($HTTP_SESSION_VARS['zmienna']))
{
if(isset($HTTP_POST_VARS['uzytkownik']))
{
if(isset($HTTP_POST_VARS['id_uzytkownika']))
{
$plik = '../text.txt';
$wskaznik = fopen ($plik, "r");
$string = fread ($wskaznik, filesize($plik));
$haslo = $string;
$polacz = mysql_connect ('localhost', 'ml', $haslo);
if(!$polacz)
{
?>
<h2 class="tyt">Błąd!</h2>
<p class="tr">Połączenie z bazą danych nie powiodło się, skontaktuj się z <a href="">administratrem.</p>
<?php
exit;
}
$wybor = mysql_select_db ('ml');
if(!$wybor)
{
?>
<h2 class="tyt">Błąd!</h2>
<p class="tr">Wybór bazy danych nie powiódł się, skontaktuj się z <a href="">administratrem.</p>
<?php
exit;
}
}
else
{
?>
<h2 class="tyt">Informacja</h2>
<p class="tr">Nie przekazano id.</p>
<?php
}
}
else
{
?>
<h2 class="tyt">Informacja</h2>
<p class="tr">Nic nie zostało wybrane.</p>
<?php
}
}
else
{
?>
<h2 class="tyt">Odmowa dostępu</h2>
<p class="tr">Nie jesteś uprawniony do przeglądania tych zasobów.</p>
<?php
}
?>
|
_________________ Zapraszam na www.komputerpc.pl |
|
Powrót do góry |
|
|
Lewand |
Wysłany: Pon Cze 13, 2005 10:09 pm Temat postu: |
|
|
Moderator
Dołączył: 27 Kwi 2005 Posty: 29 Skąd: z sieci
|
zapomniał napisać że sesje są rozpoczynane w plikach wcześniejszych. Ten kod, który podałem są to pliki includowane. Zapytane, które jest w tym kodzie wykorzystywane jest do uzupełniania owej tabeli:
Kod: |
<tr style="text-align:center; background:#99cccc;"><td><input type="checkbox" name="uzytkownik" value="<?php print $id_uzytkownika;?>"></td><td><?php print $id_komentarza;?></td><td><?php print $login; ?></td><td><?php print $haslo; ?></td><td><?php print $kontakt; ?></td><td><?php print $imie; ?></td><td><?php print $nazwisko; ?></td></tr> |
Jak zapewne zauważyłeś, cała tabela jest umieszczona w formularzu i tutaj nie zabardzo rozumiem dlaczego mam tam wpisać name lub id?
Jeżeli chodzi o mysql_query z tymi warunkami przyznaje rację, ale w dalszym ciągu nawet po wpisaniu id lub name w formularzu nie wiele zdziałałem. Może jakieś modyfikacje w skrypcie musze wprowadzić. Pierwszy raz piszę tego typu skrypt dlatego jest otwarty na wszelkie propozycje rozwiązania tego problemu. Jeżeli będziesz wprowadzał zmiany w skrypcie zaznacz to pogrubieniem lub w jakikolwiek inny sposób.
Zapytanie, które ma być wkonane w celu pobrania danych z wybranego rekordu ma się znajdować w tym miejscu:
Kod: |
$wybor = mysql_select_db ('ml'); |
Oczywiście jest jeszcze nie napisane ponieważ nie mogę przekazać id_uzytkownika z poprzedniego skryptu. Chyba, że co dopiero teraz przyszło mi na myśl, zapytanie to ma być wykonane w skrypcie pochodzącym z pliku uzytkownicy.php?? Sprawę zostawiam do dalszego skomentowania. _________________ Zapraszam na www.komputerpc.pl |
|
Powrót do góry |
|
|
Lewand |
Wysłany: Wto Cze 14, 2005 4:30 pm Temat postu: |
|
|
Moderator
Dołączył: 27 Kwi 2005 Posty: 29 Skąd: z sieci
|
nie nie z pliku uzytkownicy.php nie można przekazać id_uzytkownika do skryptu modyfikuj.php.
Widze, ze nie jasno sie wyrazilem za co bardzo przerpaszam i juz koryguje moja wypowiedz. Napisalem sobie skrypt (panel admina - tak to nazwalem), ktory sluzy tylko i wylacznie moim potrzebom typu - usuwanie zbednych rekordow oraz modyfikacje o ktorych mowa. Otoz wszystko dziala poprawnie do momentu wyswietlania rekordow z bazy na www. Wraz z tymi danymi uczynilem sobie mozliwosc modyfikowania tych danych. Wiadomo przciez ze nie wszystko trzeba modyfikowac, dlatego przy kazdym rekordzie ktory jest wyswietlany na www umiescilem pole checkbox. By mozna bylo zmodyfikowac ten rekord musze sobie przekazac identyfikator tego rekordu bo chce go wyswietlic na kolejnej stronie gdzie chce to modyfikowac. Za identyfikator rekordu wzialem sobie zmienna id_uzytkownika. No i po nacisnieciu buttona modyfikuj wyskakuje mi komunikat nie przekazano id. To oczym teraz mowie jest zawarte w pliku modyfikuj.php.
Szczur to napisales praktycznie nic nie zmienilo poza tym ze zmienles nazwe zmiennej sesji. Mój problem tkwi w tym (zapewniam ze nie jest trudny do rozwiazania - tak mysle) dlaczego nie przkazuje mi tego id_uzytkownika. Co musze dopisac żeby bylo wszystko w porzadku?? _________________ Zapraszam na www.komputerpc.pl |
|
Powrót do góry |
|
|
Lewand |
Wysłany: Wto Cze 14, 2005 9:42 pm Temat postu: |
|
|
Moderator
Dołączył: 27 Kwi 2005 Posty: 29 Skąd: z sieci
|
|
Powrót do góry |
|
|
|
|
|
|
Strona 1 z 1 |
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
|
|
|
|
|
|
|
|
|
|