Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][SQL]Zapis danych do bazy
Forum PHP.pl > Forum > Przedszkole
mlody69
Witam,
zrobiłem sobie edycje profilu jednak nie działa gdyż dane sie nie zapisują do bazy.
Oto mój kod
  1. <?php
  2. elseif (isset($_GET['users']) && $_GET['users'] == 'edit')
  3. {
  4. $nick=$_POST['nick'];
  5. $pass=md5($_POST['pass']);
  6. $id= (int)$_GET['id'];
  7. $admin = ($_POST['admin'] == '1') ? '1' : '0';
  8.  //$link=mysql_query("SELECT * FROM users WHERE id='$id'");
  9.  mysql_query("SELECT * FROM `users` WHERE `id`=$id LIMIT 1;");
  10.  //$wiersz=mysql_fetch_array($link);
  11.  
  12.  
  13.    
  14.  
  15.    echo '<b><center><h2>Edycja profilu</h2></center></b><br>';
  16.  
  17.    echo '<center><div id="TEXT"><form method="POST" action="admin.php?profile=edit&id='.$wiersz['id'].'">
  18.  
  19.  
  20.                         <table border="0" width="100%">
  21.  
  22.            <tr>
  23.  
  24.                <td>Nick:</td>
  25.  
  26.                <td><input type="text" name="nick" value="'.$wiersz['nick'].'"></td>
  27.  
  28.            </tr>
  29.  
  30.            <tr>
  31.  
  32.                <td>Hasło: </td>
  33.  
  34.                <td><input type="password" name="pass"></textarea></td>
  35.  
  36.            </tr>
  37.             <tr>
  38.                <td>Administrator </td>
  39.            <td><input type="checkbox" name="admin" value="1" /></td>
  40.            <tr>
  41.  
  42.                <td> </td>
  43.  
  44.                <td><input type="submit" value="Zapisz"></td>
  45.  
  46.            </tr>
  47.  
  48.        </table>
  49.            
  50.                         </form></div></center>';
  51.  
  52. mysql_query('UPDATE `users` SET `nick`="'. $nick .'", `pass`="'. $pass .'", `admin`="'. $admin .'" WHERE `id`="'.$wiersz[id].'"');
  53. }
  54. ?>
luniak
a zmień
  1. <?
  2. mysql_query('UPDATE `users` SET `nick`="'. $nick .'", `pass`="'. $pass .'", `admin`="'. $admin .'" WHERE `id`="'.$wiersz[id].'"');
  3. ?>


na

  1. <?
  2. mysql_query("UPDATE `users` SET `nick`='$nick', `pass`='$pass', `admin`= '$admin' WHERE `id`= '$wiersz[id]'");
  3. ?>



PS:
może byś odslashował tę linijkę smile.gif
  1. <?
  2. //$wiersz=mysql_fetch_array($link);
  3. ?>


a tą
  1. <?
  2. mysql_query("SELECT * FROM `users` WHERE `id`=$id LIMIT 1;");
  3. ?>

zamienił na
  1. <?php
  2. $link = mysql_query("SELECT * FROM `users` WHERE `id`= $id LIMIT 1");
  3. ?>
Spawnm
  1. <?php
  2. mysql_query("SELECT * FROM `users` WHERE `id`=$id LIMIT 1;");
  3. //$wiersz=mysql_fetch_array($link);
  4. print_r $_SESSION;
  5. ?>

to nie ma sensu.

brak pobrania danych do tablicy wiersz


$_GET['users'] == 'edit' nie jest spełniony po wysłaniu forma
mlody69
Po poście luniaka pole z nickiem jest puste,a pole admin jest 0 .

Jakieś podpowiedzi?
bmL
  1. <?php
  2. echo '<center><div id="TEXT"><form method="POST" action="admin.php?profile=edit&id='.$wiersz['id'].">
  3. ?>

  1. <?php
  2. elseif (isset($_GET['users']) && $_GET['users'] == 'edit')
  3. ?>

Rozbieżność trochę tutaj zachodzi. Chyba to miał na myśli spawnm.

+
  1. <?php
  2. if(!empty($_POST['submit'])// Jeżeli formularz nie został wysłany to chyba nie ma sensu aktualizować danych użytkownika?
  3. {
  4.  mysql_query("UPDATE `users` SET `nick`='$nick', `pass`='$pass', `admin`= '$admin' WHERE `id`= '$wiersz[id]'");
  5. }
  6. ?>
mlody69
Fakt,tam był błąd.
Teraz otrzymuje bląd
Cytat
Parse error: syntax error, unexpected '{' in /home/public_html/admin/admin.php on line 371

Przypuszczam ze zgubiłem gdzies klamrę ale nie moge znaleźć gdzie :/
http://pastebin.pl/064ff650cbc75aee1b677825f76976d3
golaod
Cytat(mlody69 @ 2.06.2009, 15:51:29 ) *
Fakt,tam był błąd.
Teraz otrzymuje bląd

Przypuszczam ze zgubiłem gdzies klamrę ale nie moge znaleźć gdzie :/
http://pastebin.pl/064ff650cbc75aee1b677825f76976d3


A teraz popatrz ile linijek kodu ma plik który podałeś w linku w porównaniu do linii w pliku w którym występuje rzeczywiście błąd.
mlody69
Cytat
Parse error: syntax error, unexpected '{' in /home/public_html/admin/admin.php on line 366

http://pastebin.pl/8683
kkuba
Kod
if(!empty($_POST['submit'])


na

Kod
if(!empty($_POST['submit']))
mlody69
Dobra,teraz tylko nie zapisuje do bazy nowego nicku,hasła,statusu($admin)
bmL
  1. <?php
  2. ?>
na końcu dopisać i sprawdzić czy zapytanie się udaje winksmiley.jpg
mlody69
Nic sie nie dzieje/wyświetla
bmL
Byłem pewien że przycisk submit ma name=submit ale nie ma, w takim razie:
  1. <td><input type="submit" value="Zapisz"></td>
zamień na
  1. <td><input type="submit" value="Zapisz" name="submit"></td>
mlody69
Niewiarygodne,ale działa.
Dziękuję bardzo.
Nie będe zakładał kolejnego tematu więc napiszę w tym,mam problem z edycją newsów,tzn też nie zapisuje nowej treści/tytułu.
Oto kod:
http://pastebin.pl/8776
golaod
Skoro się nie zapisuje to napisz jaki błąd się pojawia. (mysql_error zaraz po mysql_query('update'))
mlody69
Cytat
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'tresc='Aha.dsa' WHERE id='1'' at line 1
golaod
SET tytul='ala', cos='innego', i tak dalej.
Brak przecinków.
mlody69
Działa,dzięki.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.