Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pierwsze kroki w PHP i mysql
Forum PHP.pl > Forum > Przedszkole
roballo2009
Witam,
chciałem zrobić sobie skrypt do którego będę wstawiał np. filmy, które posiadam.
Stworzyłem bazę danych:
  1. <?
  2. require 'conn.php';
  3. $sql0="create database if not exists movies";
  4. mysql_query($sql0) or die(mysql_error());
  5. $sql1="create table if not exists movie_list (
  6. id int(11) NOT NULL auto_increment,
  7. movies_title varchar(50) NOT NULL,
  8. PRIMARY KEY (id))";
  9. mysql_query($sql1) or die(mysql_error());
  10. echo('Baza danych utworzona poprawnie');
  11. ?>

Tutaj mam połączenie z bazą:
  1. <?
  2. define('DB_HOST','localhost');
  3. define('DB_USER','***'); //wpisz nazweuzytkownika bazy danych
  4. define('DB_PASS','***'); //wpisz haslo dla tego uzytkownika
  5. define('DB_DB','movies');
  6.  
  7. $connect = mysql_connect(DB_HOST, DB_USER, DB_PASS)
  8. or die('Nie udalo polaczyc sie z baza danych. '.mysql_error());
  9.  
  10. @mysql_select_db(DB_DB,$connect) ;
  11. ?>

Tutaj mam wstawianie rekordów, itp.
  1. <?php
  2. require('conn.php');
  3.  
  4. $mt=NULL;
  5. //Sprawdzenie filmu
  6. if(empty($_POST['movies_title'])) {
  7. $mt=FALSE;
  8. $message .= '<p>Wpisz tytul filmu</p>';
  9. } else {
  10. $mt=$_POST['movies_title'];
  11. }
  12. if ($mt) {
  13. require_once('C:\usr\krasnal\www\roballo\movie\conn.php');
  14. //utworzenie zapytania
  15. $query="INSERT INTO movie_list (movies_title) VALUES ('$mt')";
  16. $result=@mysql_query($query); //Wykonaj zapytanie
  17. if ($result) {
  18. echo '<p><b>Film zostal dodany!</b></p>';
  19. exit();
  20. } else { //jesli zapytanie nie zostalo wykonane
  21. $mt='<p>Film nie zostal dodany z powodu awarii systemu.</p><p>' . mysql_error() . '</p>';
  22. }
  23. mysql_close(); //zamkniecie polaczenia z baza
  24. } else {
  25. $mt .= '<p>Sprobuj ponownie pozniej</p>';
  26. }
  27. //koniec wyrazenia warunkowego submit
  28. if (isset($mt)) {
  29. echo '<font color="red">',$mt, '</font>';
  30. }
  31. $film=@mysql_query('SELECT movies_title FROM movie');
  32. if ($film) {
  33. exit();
  34. }
  35. //Wyswietlanie listy z filmami
  36. while ($row=mysql_fetch_array($film)) {
  37. echo $row['movies_title'];
  38. }
  39. //endif;
  40. ?>
  41. <body>
  42. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  43. <p><b>Dodaj film:</b><input type="text" name="movies_title" size="20" maxlength="40" value="<?php if (isset($_POST['movies_title'])) echo $_POST['movies_title']; ?>" /></p>
  44. <input type="submit" name="submit" value="Wyslij dane" />
  45. </form>
  46. </body>


Wszystko jest pięknie. Wstawiane są do bazy rekordy wyskakuje napis "Film został dodany!". Ale niestety nie pojawia mi się lista filmów. Wyskakuje mi takie coś:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result...
No i za bardzo nie wiem co jest nie tak w tej składni.

P.S. Wiem, wiem, znam opcję szukaj, itp. ale jakoś samemu nie moge do tego dość co jest nie tak.

Pozdrawiam
R
nospor
po pierwsze:
nie:if ($film) {
exit();
}

a: if (!$film) {
exit();
}

Przeciez masz konczyc gdy sie nie powiedzie a nie gdy sie powiedzie.

Po drugie:jak masz blad to sie dowiedz jaki to blad:
http://nospor.pl/php-faq-n29.html#faq-6

po trzecie: przenosze
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.