Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem ze skryptem PHP
krzyzak_p
post
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


stworzylem nastepujacy skrypt w php, ktorego celem jest dodawanie do bazy danych adresu e-mail, ktory mam zamiar wykorzystac do subskrypcji. Gdzies jest blad, tylko nie moge go zanlezc... prosze o pomoc.. o to te pliki

plik subscript.php
  1. <?php #skrypt odpowiedzialny za subskrypcje
  2. // teraz stworzymy formularz....
  3.  
  4. if (isset($_POST['submit'])) {
  5. // obsluz formularz
  6.  
  7. $message = NULL;
  8. // tworzyzmy pousta zmienna
  9.  
  10. //sprawdzmy adres e-mail
  11. if (empty($_POST['email'])) {
  12. $ln = FALSE;
  13. $message .= '<p> Nie podales swojego adresu e-mail!</p>';
  14. } else {
  15. $ln = $_POST['email'];
  16. }
  17.  
  18.  
  19. if ($ln) { 
  20. // jezeli wszystko dziala 
  21.  
  22. //to dodajemy uzytkownika do bazy
  23. require_once('mysql_conect.php'); //laczenie sie z baza
  24.  
  25.  
  26. // tworzymy zapytanie do bazy
  27. $query = &#092;"INSERT INTO subscript (email) VALUES ('$ln')\";
  28. $result = @mysql_query ($query);
  29.  
  30. //wykonaj zapytanie
  31. if ($result) {
  32. //jezeli wykonano bez przeszkod
  33.  
  34. echo '<p><b>zostales dodany do Subskrypcji</p></b>';
  35. exit(); 
  36. //opusc skrypt
  37.  
  38. } else {
  39. //jezeli nei wyakonano zapytania do bazy
  40. $message = '<p> nie zostaels dodany do subskrypcji, porsimy sporbowac pozniej</p><p>' . mysql_error() . '</p>';
  41. }
  42.  
  43. // konczymy polaczenie z baza danych
  44.  
  45. }
  46. } else {
  47. $message .= '<p>Sproboj jeszcze raz.</p>';
  48. }
  49.  
  50. // koniec glownego wyrazenia
  51.  
  52. //wyswietl komunikaty o bledach na stronie
  53. if (isset($message)) {
  54. echo '<font color=\"red\">', $message, '</font>';
  55. }
  56. ?>
  57.  
  58. <form action=\"<?php echo $_SERVER['PHP_SELF']; ?>\" method=\"post\">
  59. <fieldset><legend> POdaj swoj adres e-mail:</legend>
  60.  
  61. <p><b>Adres e-mail:</b> <input type=\"text\" name=\"email\" size=\"40\" maxlenght=\"60\" value=\"<?php if (isset($_Post['email'])) echo $_POST['email']; ?>\" /> </p>
  62. <div align=\"center\"><input type=\"submit\" name=\"submit\" value=\"Zapisz się\" /></div>
  63.  
  64. </form>


i plik mysql_conect.php
  1. <?php #skrypt odpowiedzialny za polaczenie z baza danych
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. $DB_USER = 'nazwa';
  5. $DB_PASSWORD = 'haslo';
  6. $DB_HOST = 'localhost';
  7. $DB_NAME = 'nazwa_bazy';
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect (DB_HOST, DB_USER, DB_PASSWORD);
  11. mysql_select_db (DB_NAME);
  12. ?>

w skrypcie mysql_conect specjaleni zmienilem dane..., ale w orginale dane sa poprawne. z gry dzieki za pomoc

----
Kod php umieszczamy w [php]
hwao
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
Ive
post
Post #2





Grupa: Zarejestrowani
Postów: 352
Pomógł: 1
Dołączył: 17.07.2003
Skąd: Kazanów

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


a nie zapomniales podac co ci sie na ekranie wyswietla jak odpalisz skrypt?
Go to the top of the page
+Quote Post
krzyzak_p
post
Post #3





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


jest podane przeciez w liniach 31-57...
Go to the top of the page
+Quote Post
mpps
post
Post #4





Grupa: Zarejestrowani
Postów: 242
Pomógł: 0
Dołączył: 14.03.2003
Skąd: Szczecin

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


chodzi o to, jaką informację Tobie wyświetla funkcja mysql_error(); a nie, co Ty sobie wypisałeś, żeby Ci wyświetlał w echo();...
Go to the top of the page
+Quote Post
angel2953
post
Post #5





Grupa: Zarejestrowani
Postów: 199
Pomógł: 5
Dołączył: 8.07.2004
Skąd: gdynia

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


Cytat(krzyzak_p @ 2004-10-10 17:58:59)
  1. <?php
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. $DB_USER = 'nazwa';
  5. $DB_PASSWORD = 'haslo';
  6. $DB_HOST = 'localhost';
  7. $DB_NAME = 'nazwa_bazy';
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect (DB_HOST, DB_USER, DB_PASSWORD);
  11. mysql_select_db (DB_NAME);
  12.  
  13. ?>

Błąd jest prosty (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

Albo to dajesz jako zmienne i wtedy kod wygląda tak:

  1. <?php
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. $DB_USER = 'nazwa';
  5. $DB_PASSWORD = 'haslo';
  6. $DB_HOST = 'localhost';
  7. $DB_NAME = 'nazwa_bazy';
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect ( $DB_HOST, $DB_USER, $DB_PASSWORD );
  11. mysql_select_db ( $DB_NAME );
  12.  
  13. ?>


albo definiujesz jako stałe, czyli tak:

  1. <?php
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. define ( DB_USER, &#092;"nazwa\" );
  5. define ( DB_PASSWORD, &#092;"haslo\" );
  6. define ( DB_HOST, &#092;"localhost\" );
  7. define ( DB_NAME, &#092;"nazwa_bazy\" );
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect ( DB_HOST, DB_USER, DB_PASSWORD );
  11. mysql_select_db ( DB_NAME );
  12.  
  13. ?>


Albo albo (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) :D trzeba się zdecydować

Ten post edytował angel2953 12.10.2004, 11:34:25
Go to the top of the page
+Quote Post
krzyzak_p
post
Post #6





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


poprawilem to, ale po wpisaniu dancyh do okienka i wyslaniu pojawia mi si epusty ekran, a w bazie nie przybylo zadnego rekordu... cos jest nadal nei tak, albo baza na dhost.info jest skopana...
Go to the top of the page
+Quote Post
angel2953
post
Post #7





Grupa: Zarejestrowani
Postów: 199
Pomógł: 5
Dołączył: 8.07.2004
Skąd: gdynia

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


a daj za zapytaniem do MySQL'a takie coś:
  1. <?php
  2. or die ( mysql_error() );
  3. ?>
dzięki czemu dowiesz się jaki jest błąd... (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
krzyzak_p
post
Post #8





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


wstukalem to, ale bez zmian, zreszt azobacz samtutaj...
Go to the top of the page
+Quote Post
czachor
post
Post #9





Grupa: Zarejestrowani
Postów: 897
Pomógł: 40
Dołączył: 16.12.2003
Skąd: Warszawa

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


Ta literówka - mysql_conect (jedno 'n') - to tylko tutaj na forum?
Bo jeśli już to mysql_connect" title="Zobacz w manualu PHP" target="_manual.
Jeśli to tylko na forum, to nic nie pisałem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
krzyzak_p
post
Post #10





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


o ***** faktycznie mam tylko jedno "n" w kodzie.. tnx ale i tak nadal nie dziala:)) ehh ja to mam talent do psucia
Go to the top of the page
+Quote Post
angel2953
post
Post #11





Grupa: Zarejestrowani
Postów: 199
Pomógł: 5
Dołączył: 8.07.2004
Skąd: gdynia

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


  1. <?php #skrypt odpowiedzialny za subskrypcje
  2. // teraz stworzymy formularz....
  3.  
  4. if (isset($_POST['submit'])) {
  5. // obsluz formularz
  6.  
  7. $message = NULL;
  8. // tworzyzmy pousta zmienna
  9.  
  10. //sprawdzmy adres e-mail
  11. if (empty($_POST['email'])) {
  12. $ln = FALSE;
  13. $message .= '<p> Nie podales swojego adresu e-mail!</p>';
  14. } else {
  15. $ln = $_POST['email'];
  16. }
  17.  
  18.  
  19. if ($ln) {
  20. // jezeli wszystko dziala
  21.  
  22. //to dodajemy uzytkownika do bazy
  23. require_once('mysql_conect.php'); //laczenie sie z baza
  24.  
  25.  
  26. // tworzymy zapytanie do bazy
  27. $query = &#092;"INSERT INTO subscript (email) VALUES ('$ln')\";
  28. $result = @mysql_query ($query) 
  29. // wyświetlenie błedu jeśli zaistnieje
  30. or die ( mysql_error() ); 
  31.  
  32. //wykonaj zapytanie
  33. if ($result) {
  34. //jezeli wykonano bez przeszkod
  35.  
  36. echo '<p><b>zostales dodany do Subskrypcji</p></b>';
  37. exit();
  38. //opusc skrypt
  39.  
  40. } else {
  41. //jezeli nei wyakonano zapytania do bazy
  42. $message = '<p> nie zostaels dodany do subskrypcji, porsimy sporbowac pozniej</p><p>' . mysql_error() . '</p>';
  43. }
  44.  
  45. // konczymy polaczenie z baza danych
  46.  
  47. }
  48. } else {
  49. $message .= '<p>Sproboj jeszcze raz.</p>';
  50. }
  51.  
  52. // koniec glownego wyrazenia
  53.  
  54. //wyswietl komunikaty o bledach na stronie
  55. if (isset($message)) {
  56. echo '<font color=\"red\">', $message, '</font>';
  57. }
  58. ?>
  59.  
  60. <form action=\"<?php echo $_SERVER['PHP_SELF']; ?>\" method=\"post\">
  61. <fieldset><legend> POdaj swoj adres e-mail:</legend>
  62.  
  63. <p><b>Adres e-mail:</b> <input type=\"text\" name=\"email\" size=\"40\" maxlenght=\"60\" value=\"<?php if (isset($_Post['email'])) echo $_POST['email']; ?>\" /> </p>
  64. <div align=\"center\"><input type=\"submit\" name=\"submit\" value=\"Zapisz się\" /></div>
  65.  
  66. </form>

  1. <?php #skrypt odpowiedzialny za polaczenie z baza danych
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. $DB_USER = 'nazwa';
  5. $DB_PASSWORD = 'haslo';
  6. $DB_HOST = 'localhost';
  7. $DB_NAME = 'nazwa_bazy';
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect ( $DB_HOST, $DB_USER, $DB_PASSWORD) 
  11. // wyświetlenie błedu jeśli zaistnieje
  12. or die ( mysql_error() );
  13. mysql_select_db ( DB_NAME ) 
  14. // wyświetlenie błedu jeśli zaistnieje
  15. or die ( mysql_error() );
  16. ?>


spróbuj tego kodu, oraz sprawdź czy w
  1. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">


w polu action jest wpisana nazwa pliku... Czasami się zdarza, że nie wpisuje... I podaj jakie błędy wyświetlają się podczas działania skryptu...
Go to the top of the page
+Quote Post
krzyzak_p
post
Post #12





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


wrzucilem to, poprawilem w
  1. mysql_conect ( $DB_HOST, $DB_USER, $DB_PASSWORD)
na mysql _connect.... a tak to otrzymuje cos takiego... Access denied for user: 'krzyzakp@localhost' to database 'DB_NAME'
Go to the top of the page
+Quote Post
scanner
post
Post #13





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Przeniesione: Skrypty php -> php
Powód: Skrypty php to problemy z gotowymi skryptami obcych autorów. Własne problemy opisujemy na php
Go to the top of the page
+Quote Post
-Wieviór-
post
Post #14





Goście







Angel 2953 zrobił tu lekki błąd:

  1. <?php #skrypt odpowiedzialny za polaczenie z baza danych
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. $DB_USER = 'nazwa';
  5. $DB_PASSWORD = 'haslo';
  6. $DB_HOST = 'localhost';
  7. $DB_NAME = 'nazwa_bazy';
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect ( $DB_HOST, $DB_USER, $DB_PASSWORD) 
  11. // wyświetlenie błedu jeśli zaistnieje
  12. or die ( mysql_error() );
  13. mysql_select_db ( DB_NAME ) // powinno być $DB_NAME
  14. // wyświetlenie błedu jeśli zaistnieje
  15. or die ( mysql_error() );
  16. ?>



OTO POPRAWNY KOD:
  1. <?php #skrypt odpowiedzialny za polaczenie z baza danych
  2.  
  3. // w stalych umieszczam dane do laczenia sie z baza..
  4. $DB_USER = 'nazwa';
  5. $DB_PASSWORD = 'haslo';
  6. $DB_HOST = 'localhost';
  7. $DB_NAME = 'nazwa_bazy';
  8.  
  9. // laczymy sie z baza i wybieramy baze
  10. mysql_conect ( $DB_HOST, $DB_USER, $DB_PASSWORD) 
  11. // wyświetlenie błedu jeśli zaistnieje
  12. or die ( mysql_error() );
  13. mysql_select_db ( $DB_NAME ) 
  14. // wyświetlenie błedu jeśli zaistnieje
  15. or die ( mysql_error() );
  16. ?>


Zresztą popatrz czasem na błędy, które Ci pokazuje...

Ten post edytował Wieviór 14.10.2004, 08:08:52
Go to the top of the page
+Quote Post
krzyzak_p
post
Post #15





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 10.10.2004

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


WIELKIE DZIEKI!! w koncu dziala.. a juz tracielm nadzieje..
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: 23.08.2025 - 12:51