Skocz do zawartości

Usunięcie rekordu i wybór z listy


Matys
 Udostępnij

Rekomendowane odpowiedzi

Witam, potrzebuję pomocy z bazą danych. Napisałem skrypt do odbioru zgłoszeń. Ktoś wysyła zgłoszenie w formularzu kontaktowym i mi się pojawia w panelu zgłoszeń po zalogowaniu. Mam jednak problem z dwoma rzeczami.

1. Jak zrobić, abym mógł obok zgłoszenia wybrać Przeczytane/Nieprzeczytane. (wybór z listy, wybieram i akceptuje).

2. Jak usunąć rekord z bazy? Kiedy dodaje komendę usunięcia odświeża mi stronę i muszę ponownie się zalogować. Tak jakby nie zapamiętuje logowania. Logowanie mam najprostsze w pliku, bez żadnego kodowania MD5.

Odnośnik do komentarza
Udostępnij na innych stronach

1. Stwórz sobie kolumnę "read" dla niej typ BOOLEAN i domyślnie daj 0, a przy pobieraniu rekordu zmieniaj wartość kolumny "read" na 1 (wartości logiczne: prawda: +,1,true; fałsz: -,0,false), czyli 1 będzie oznaczać przeczytane, a 0 nieprzeczytane.

2. Może to być problem z sesją... upewnij się czy na początku skryptu używasz session_start(), a następnie cz nie używasz gdzieś session_destroy(). Sprawdź też czy dobrze napisałeś sprawdzanie czy użytkownik jest zalogowany.

Odnośnik do komentarza
Udostępnij na innych stronach

Zrobiłem przez mysqli wszystko pod baze. Teraz tylko mam problem z usuwaniem.

Tzn. wyskakuje mi błąd.

Fatal error: Call to a member function close() on a non-object in /home/marus/domains/zpuhmarus.pl/public_html/formularz/formularz.php on line 51
A to końcówka kodu:
$id = $_GET['usun'];

			$wynik2 = @$polaczenie -> query("DELETE FROM baza WHERE id = '$id'");

			if ($wynik2 === false){

				echo '
ERROR';

				$polaczenie -> close();

			}

			else {

				echo "Usunięto poprawnie";

			}

			$wynik -> close();

			$wynik2 -> close();	

			$polaczenie -> close();

Odnośnik do komentarza
Udostępnij na innych stronach

Po dodaniu błędu nie ma, ale nic się nie wyświetla :) Zaczął on się wyświetlać jak dodałem właśnie nowe "query" (dawne query, nie wiem jak to nowe się dodaje, może dlatego). Czyli ten moment musi być nie tak. Może coś jest źle, albo je się z czymś?

$wynik2 = @$polaczenie -> query("DELETE FROM baza WHERE id = '$id'");

           if ($wynik2 === false){

               echo '
ERROR';

               $polaczenie -> close();

           }

           else {

               echo "Kliknij po usunięciu rekordu, aby zniknął on z ekranu";

           }

           $wynik -> close();

           $wynik2 -> close(); [/code]

Odnośnik do komentarza
Udostępnij na innych stronach

Problem wciąż nierozwiązany? Dodaj swoją odpowiedź

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto. Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
 Udostępnij

×