Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [HTML][MySQL][PHP]Update bazy działało i przestało.
bolus150
post
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 14.06.2008

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


Witam,
mam taki problem. Mianowicie update bazy działało i nagle przestało i nie wiem dlaczego. Mógłby ktoś zerknąć dlaczego?
Pierwszy plik do pobierania opisu z bazy
Editopis.php
  1. <?php
  2. include 'header.php';
  3. include 'menu.php';
  4.  
  5. $host="-----";
  6. $username="-----";
  7. $password="-----";
  8. $db_name="-----";
  9. $tbl_name="-----";
  10.  
  11. mysql_query('SET NAMES utf8');
  12. mysql_connect("$host", "$username", "$password")or die("Brak połączenia z SQL");
  13. mysql_select_db("$db_name")or die("Brak połączenia z BD");
  14.  
  15. $id=$_GET['id'];
  16. $name=$_GET['name'];
  17. $date=$_GET['date'];
  18. $sql="SELECT * FROM $tbl_name WHERE id='$id'";
  19. $result=mysql_query($sql);
  20. $rows=mysql_fetch_array($result);
  21. ?>
  22.  
  23. <table width="400" border="0" cellspacing="1" cellpadding="0">
  24. <form name="form1" method="post" action="update_ac.php">
  25. <td><strong>Edytuj opis</strong> </td><tr>
  26. <td>Nazwa: <?php echo $rows['name'];?></td><tr>
  27. <td>Data dodania: <?php echo $rows['date'];?></td><tr>
  28. <td><input name="opis" type="text" size = "100" id="opis" value="<? echo $rows['opis']; ?>"></td><tr>
  29. <input name="id" type="hidden" id="id" value="<? echo $rows['id']; ?>">
  30. <td><input type="submit" name="Submit" value="Edytuj"></td>
  31.  
  32. </form>
  33.  
  34. </table>
  35.  
  36. <?php
  37. // close connection
  38. ?>


I drugi plik do updatowania,

update_ac.php

  1. <?php
  2. include 'menu.php';
  3. include 'header.php';
  4.  
  5. $host="-----";
  6. $username="-----";
  7. $password="-----";
  8. $db_name="-----";
  9. $tbl_name="-----";
  10.  
  11. mysql_query('SET NAMES utf8');
  12. mysql_connect("$host", "$username", "$password")or die("Brak połączenia z SQL");
  13. mysql_select_db("$db_name")or die("Brak połączenia z BD");
  14.  
  15. $sql="UPDATE $tbl_name SET opis = '$opis' WHERE id = '$id'";
  16. $result=mysql_query($sql);
  17.  
  18. if($result){
  19. echo "Doskonale";
  20. echo "<BR>";
  21. echo "<a href='index.php'>Zobacz zmiany.</a>";
  22. }
  23.  
  24. else {
  25. echo "Błąd";
  26. }
  27.  
  28. ?>


Poradzi ktoś coś?
Go to the top of the page
+Quote Post
Raito
post
Post #2





Grupa: Zarejestrowani
Postów: 156
Pomógł: 19
Dołączył: 27.04.2014

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


1. Dawaj mysql_query('SET NAMES utf8'); po połączeniu z bazą.
2. Daj sobie or die() w mysql_query.
3. Skąd bierzesz id?
Go to the top of the page
+Quote Post
bolus150
post
Post #3





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 14.06.2008

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


W pierwszym pliku jest:
  1. $id=$_GET['id'];


I to wypisuje mi z bazy do formularza zawartość danego id

  1. <td><input name="opis" type="text" size = "100" id="opis" value="<? echo $rows['opis']; ?>"></td><tr>


Dalej nie działa, a zrobiłem wszystkie wskazówki, przechodzi normalnie, ale nic nie zmienia.
Go to the top of the page
+Quote Post
Aqu
post
Post #4





Grupa: Zarejestrowani
Postów: 279
Pomógł: 58
Dołączył: 14.07.2012

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


Ale w jaki sposób zmienna $id z pierwszego pliku ma być dostępna w drugim?

  1. $sql="UPDATE $tbl_name SET opis = '".$_POST['opis']."' WHERE id = '.$POST['id']."'";


i zabezpiecz przed sql injection

Ten post edytował Aqu 29.03.2015, 00:02:33
Go to the top of the page
+Quote Post
bolus150
post
Post #5





Grupa: Zarejestrowani
Postów: 150
Pomógł: 0
Dołączył: 14.06.2008

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


Teraz lepiej?

  1.  
  2. $id = addslashes($_POST['id']);
  3. $opis = addslashes($_POST['opis']);
  4. $sql="UPDATE $tbl_name SET opis = '$opis' WHERE id = '$id'";
  5.  




Ten post edytował bolus150 29.03.2015, 13:03:23
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 Aktualny czas: 21.08.2025 - 08:25