Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][HTML][MYSQL]Kasowanie rekordu
frykar
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 29.01.2009

Ostrzeżenie: (10%)
X----


Witam. Mam taki problem, napisalem baze danych w mysql. Teraz chcem zrobic graficzną obslugę tej bazy wykorzystując PHP. Mam problem z kasowaniem wybranego rekordu. Oto kodzik:
  1. <TITLE>Kasowanie rekordu</TITLE>
  2. </HEAD>
  3. <H1>Kasowanie wybranego rekordu</H1>
  4.  
  5. <FORM ACTION="usun.php" METHOD="POST">
  6. <TABLE BORDER=0>
  7.  
  8. <tr><td>Nazwa_serwisu</td><td><input type=char name=nazwa_serwisu maxlength=255
  9. size=50><br></td></tr>
  10.  
  11. <tr><td colspan=2><input type=submit value="Kasuj"></td></tr>
  12.  
  13. </FORM>
  14. </BODY>
  15. </HTML>


plik usun.php

  1. <?php
  2.  if (!$Nazwa_serwisu)
  3.   {
  4.    echo "Nie ma danych<br>";
  5.   }
  6.  else
  7.   {
  8.    $connection = @mysql_connect("localhost", "root", "")
  9.    or die("Brak lacznosci");
  10.  
  11.    $db_name = "rma";
  12.  
  13.    mysql_select_db($db_name, $connection);
  14.  
  15.    $sql = "DELETE FROM dodaj_serwis WHERE Nazwa_serwisu = '$_POST[Nazwa_serwisu]' LIMIT 1";
  16.  
  17.    $result = @mysql_query($sql, $connection)
  18.    or die(mysql_error());
  19.  
  20.   if ($result)
  21.    {
  22.     echo mysql_affected_rows()." rekordow skasowanych";
  23.    }
  24.  }
  25. ?>


Czy ktos wie, gdzie tu może być błąd??
Go to the top of the page
+Quote Post
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Kod
<input type=char name=nazwa_serwisu maxlength=255
size=50>

W tym, że PHP rozróżnia wielkość liter w zmiennych/w ich kluczach.

Nazwa_serwisu, to nie to samo, co nazwa_serwisu. Poza tym, sprawdzasz warunek na prawdopodobnie nieistniejącej zmiennej.

I nie ma czegoś takiego, jak type=char.
Go to the top of the page
+Quote Post
piotrooo89
post
Post #3


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




więc tak:

  1. <input type="text" name="nazwa_serwisu" maxlength="255" size="50">


i później w usun.php
  1. <?php
  2. $nazwa = $_POST['nazwa_serwisu'];
  3. $sql = "DELETE FROM dodaj_serwis WHERE Nazwa_serwisu = '$nazwa'";
  4. ?>


pod warunkiem że masz:
po 1 poprawnie połączone z bazą danych,
po 2 dajesz odpowiednie nazwy kolumn (duże - małe litery, brak literówek)
Go to the top of the page
+Quote Post
frykar
post
Post #4





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 29.01.2009

Ostrzeżenie: (10%)
X----


Ok, wielkie Dzieki. Juz wszystko chodzi. Teraz tylko walcze z wyszukiwarką.
Go to the top of the page
+Quote Post
wolguy
post
Post #5





Grupa: Zarejestrowani
Postów: 219
Pomógł: 10
Dołączył: 9.01.2005

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


Zrób jakieś zabezpieczenie, bo inaczej sql injection.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 19.09.2025 - 16:28