Niedawno zacząłem swoją naukę php dlatego też kupiłem książkę PHP&MYSQL vademecum profesjonalisty. W jednym z działów jest opisany skrypt logowania i uwierzytelniania użytkowników. Każdy użytkownik może dodać swoje prywatne zakładki w formie adresów www. Chodzi mi o rozszerzenie tego skryptu o dodatkowe dane które użytkownik może wprowadzać np adres strony i druga komórka nazwa firmy. Zrobiłem formularz dodałem kolumnę w mysql, niby wszystko pięknie. Ale po wysyłaniu danych nie zapisuje ich w kolumnie nazwa firmy. Oto moje pliki:
dodaj_zak.php
<?php require_once('funkcje_zakladki.php'); // utworzenie krótkiej nazwy zmiennej $nowy_url = $_POST['nowy_url']; $nowa_nazwa_firmy = $_POST['nowa_nazwa_firmy']; tworz_naglowek_html('Dodawanie zakładek'); try { sprawdz_prawid_uzyt(); if (!wypelniony($_POST)) { throw new Exception('Formularz wypełniony niewłaœciwie. Proszę spróbować ponownie.'); } // sprawdzenie formatu URL-a $nowy_url = 'http://'.$nowy_url; } // sprawdzenie prawidłowoœci URL-a throw new Exception('URL nieprawidłowy.'); } // próba dodania zakładki dodaj_zak($nowy_url); dodaj_za($nowa_nazwa_firmy); // pobranie zakładek zapisanych przez użytkownika if ($tablica_urli = pobierz_urle_uzyt($_SESSION['prawid_uzyt'])) { wyswietl_urle_uzyt($tablica_url); } } catch (Exception $e) { } wyswietl_menu_uzyt(); tworz_stopke_html(); ?>
funkcje url . php
function dodaj_zak($nowy_url) { // dodawanie nowych zakładek do bazy danych $prawid_uzyt = $_SESSION['prawid_uzyt']; $lacz = lacz_bd(); // sprawdzenie, czy zakładka już istnieje $wynik = $lacz->query("select * from zakladka where nazwa_uz='$prawid_uz' and URL_zak='".$nowy_url."'"); if ($wynik && ($wynik->num_rows>0)) { throw new Exception('Zakładka już istnieje.'); } // umieszczenie nowej zakladki if (!$lacz->query("insert into zakladka values ('".$prawid_uzyt."', '".$nowy_url."')")) { throw new Exception('Wstawienie nowej zakładki nie powiodło się'); } return true; } function dodaj_za($nowa_nazwa_firmy) { // dodawanie nowych zakładek do bazy danych $prawid_uzyt = $_SESSION['prawid_uzyt']; $lacz = lacz_bd(); // sprawdzenie, czy zakładka już istnieje $wynik = $lacz->query("select * from zakladka where nazwa_uz='$prawid_uz' and nazwa_firmy='".$nowa_nazwa_firmy."'"); if ($wynik && ($wynik->num_rows>0)) { throw new Exception('Zakładka już istnieje.'); } // umieszczenie nowej zakladki if (!$lacz->query("insert into zakladka values ('".$prawid_uzyt."', '".$nowa_nazwa_firmy."')")) { throw new Exception('Wstawienie nowej zakładki nie powiodło się'); } return true; }
function wyswietl_dodaj_zak_form() { // wyœwietlenie formularza do dodania nowych zakładek ?> <form name="tabela_zak" action="dodaj_zak.php" method="post"> <table width="250" cellpadding="2" cellspacing="0" bgcolor="#cccccc"> <tr><td>Nowa zakładka:</td> <td><input type="text" name="nowy_url" value="http://" size="30" maxlength="255"></td></tr> <tr><td>Nazwa firmy:</td> <td><input type="text" name="nowa_nazwa_firmy" value="" size="30" maxlength="255"></td></tr> <tr><td colspan="2" align="center"><input type="submit" value="Dodaj zakładkę"></td></tr> </table> </form>
Proszę o pomoc, bo po prostu skończyły mi się pomysły.
Pozdrawiam