[SQL] Bazy Danych -> Pomocy

0

Witam nie miałem nigdy do czynienia z bazami danych ani z SQL.

No i przyszedł ten moment na uczelni dostałem takie zadanie

Używając serwera WWW oraz bazy danych SQL zaprojektować aplikację przyjmującą zgłoszenia na konferencję.

I teraz proszę o pomoc nie chodzi mi o gotowy model tylko o napisanie mi (podpowiedzenie) od czego powinienem zacząć naukę i tworzenie o czym najpierw poczytać i tak dalej :)

Taki algorytm jak mam to zrobić

pozdrawiam

0

Przede wszystkim radziłbym poczytać na temat baz danych. Potem przeczytaj jakikolwiek tutorial języka SQL (byle omawiał takie podstawy, jak CREATE TABLE, SELECT, INSERT INTO) oraz PHP (chodzi o obsługę formularzy).
Generalnie zadanie można wykonać w 10 minut.

0

Troche poszukałem i juz mi przeszło troche zdenerwowanie znalazłem na stronie tutka :)

i teraz mam pytanie. Zrobiłem 3 pliki tak jak tam pisało

  1. connection.php
<?php
function connection() {
    // host
    $mysql_host = "localhost";
    // user
    $mysql_user = "root";
    // hasło
    $mysql_pass = "";
    // nazwa bazy
    $mysql_db = "zgłoszenia";
    // nawiązujemy połączenie z serwerem MySQL
    @mysql_connect($mysql_host, $mysql_user, $mysql_pass)
    or die('Brak połączenia z serwerem MySQL.');
    // łączymy się z bazą danych
    @mysql_select_db($mysql_db)
    or die('Błąd wyboru bazy danych.');
}

?>

2.dodaj.php

<?php
require("connection.php");
connection();
$imie = $_POST['Imię'];
$Miejscowość = $_POST['Miejscowość'];
$Nazwisko = $_POST['Nazwisko'];
$Nr telefonu = $_POST['Nr telefonu'];

$zapytanie = "INSERT INTO `zgłoszenia` VALUES('$Imię','$Miejscowość','$Nazwisko','$Nr telefonu')";
$wykonaj = "mysql_query('$zapytanie')";
?>
  1. dodaj.html
<html>
<head>
<title> Dodawanie rekordów </title></head>
<body>
<form method="POST" action="dodaj.php">
Podaj Imię: <input type="text" size="30" name="Imię"><br>
Podaj Miejscowość: <input type="text" size="40" name="Miejscowość"><br>
Podaj Nazwisko: <input type="text" size="40" name="Nazwisko"><br>
Podaj Nr telefonu: <input type="text" size="40" name="Nr telefonu"><br>
<input type="submit" value="wyślij!">
</form>
</body>
</html>

I teraz nie wyskakuje mi żaden błąda dane nie są wysyłane na serwer :(

dziekuje za odpowiedz pozdrawiam

0

Po pierwsze:
NIGDY nie nazywaj zmiennych ze spacjami(!!) i polskimi literami.
Nawet wartość NAME tagu INPUT nie może być tak nazywana... Hmmm, nie powinna.

Nazwa zmiennej to jeden ciąg, z literą na początku, zawierający jedynie znaki alfanumeryczne ze standardowego alfabetu(a..z, 1..9)

Po drugie. Zmienna $zapytanie w parametrze u Ciebie jest objęta apostrofami. Skąd takie przypuszczenie, że powinno działać? ;>

Po prostu:

mysql_query($zapytanie);

bez apostrofów tutaj.

mysql_query, to funkcja, którą masz wywołać. A Ty robisz z tego stringa :|

Weź no jakąś książkę i dokładnie poczytaj o podstawach programowania. Co to funkcja, jak się funkcje wywołuje itd.

0

Więc tak po kolei:

  1. Dzięki za odpowiedź !!!
  2. Nie za bardzo mam czasu żeby przestudiować książkę jestem na ostatnim roku miałem praktyki do tej pory a teraz mi się nawaliło na głowę :)// Nie tłumacze się :)
  3. Kod a raczej tutka znalazłem na innym forum czy stronie, ale poprawiłem już błędy !
  4. zmienne maja prostsze nazwy wiec wszystko wygląda ok :)

Więc od początku :)

  1. connection.php
<?php
function connection() {
    $mysql_host = "localhost";
   
    $mysql_user = "Adam";
   
    $mysql_pass = "adam";
  
    $mysql_db = "zalka";
    
    @mysql_connect($mysql_host, $mysql_user, $mysql_pass)
    or die('Brak połączenia z serwerem MySQL.');

    @mysql_select_db($mysql_db)
    or die('Błąd wyboru bazy danych.');
}

?>
  1. dodaj.php
<?php
require("connection.php");
connection();
$imie = $_POST['imie'];
$nazwisko = $_POST['nazwisko'];
$stopien = $_POST['stopien'];
$miejscowosc = $_POST['miejscowosc'];
$nr = $_POST['nr'];

$zapytanie = "INSERT INTO `zalka` VALUES('$imie','$nazwisko','$stopien','$miejscowosc','$nr')";
$wykonaj = "mysql_query($zapytanie)";
?>
  1. dodaj.html
<html>
<head>
<title> Dodawanie rekordów </title></head>
<body>
<form method="POST" action="dodaj.php">
Podaj Imię: <input type="text" size="30" name="imie"><br>
Podaj Nazwisko: <input type="text" size="40" name="nazwisko"><br>
Podaj Stopien Naukowy: <input type="text" size="40" name="stopien"><br>
Podaj Miejscowość: <input type="text" size="40" name="miejscowosc"><br>
Podaj Nr telefonu: <input type="text" size="40" name="nr"><br>
<input type="submit" value="wyślij!">
</form>
</body>
</html>

Wciąż mam ten sam problem :( nie przesyła.
Ale nie wiem czy dobrze postawiłem bazę na serwerze :)

Korzystam z programu web serv 2// Stworzyłem na nim konto: Adam z hasłem: adam
Wchodzę na stronę hosta loguje się wchodzę w zakładkę MySQL & phpMyAdmin - > bazy danych->Mysql
-> i mam nazwy tabel i jest tutaj stworzona przeze mnie tabela o nazwie zalka - z polami o nazwach takich samych jakich użyłem w kodzie :)

Przepraszam za lamerstwo zależy mi aby jak najszybciej to skończyć i zabrać się za następne rzeczy :)

Pozdrawiam

0
Student_US napisał(a)
$wykonaj = "mysql_query($zapytanie)";

Damn, czy Ty czytasz to co piszę??

Jedną głupotę w tej linijce zostawiłeś. Masz teraz sam dojść do tego, co tu jest jeszcze nie tak. A pisałem o tym w poprzednim poście :/

0

Czytałem ale zwróciłem tylko uwagę na apostrofy mój błąd

0

A więc tak będe pisał i opisywał po kolei żeby nie wyszło że nie ma wkładu własnego czekam na gotowe :)

Jadę od pierwszego pliku :)

Plik connection --> Plik który łaczy mnie z bazą danych

<?php
$connection = @mysql_connect('localhost', 'Adam', 'adam')
    
W wierszu się łącze z moja baza danych. Najpierw podaje ścieżkę do bazy czyli localhost . Potem użytkownika i jego hasło. Jestem Połączony 

or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());

echo "Udało się połączyć z serwerem!<br />";

Powyżej wyświetlane są dwa komunikaty jeżeli uda się połączyć i jeżeli się nie uda :) Proste

$db = @mysql_select_db('zalka', $connection)

or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());

echo "Udało się połączyć z bazą danych!";

Powyższe linijki łączą mnie z moją stworzoną tabelą jej nazwa to zalka. W przypadku nie połączenia wyrzuca mi błąd.

mysql_close($connection);
?>

Zamykamy połączenie 

I teraz tak gdzie mi się wyświetlają te błędy Bo jakoś ani to że udało mi się połączyć ani to że mi sie nie udało nigdzie mi nie wyskakuje :(
0

A więc tak będe pisał i opisywał po kolei żeby nie wyszło że nie ma wkładu własnego czekam na gotowe :)

Jadę od pierwszego pliku :)

Plik connection --> Plik który łaczy mnie z bazą danych

<?php
$connection = @mysql_connect('localhost', 'Adam', 'adam')
    
W wierszu się łącze z moja baza danych. Najpierw podaje ścieżkę do bazy czyli localhost . Potem użytkownika i jego hasło. Jestem Połączony 

or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());

echo "Udało się połączyć z serwerem!<br />";

Powyżej wyświetlane są dwa komunikaty jeżeli uda się połączyć i jeżeli się nie uda :) Proste

$db = @mysql_select_db('zalka', $connection)

or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());

echo "Udało się połączyć z bazą danych!";

Powyższe linijki łączą mnie z moją stworzoną tabelą jej nazwa to zalka. W przypadku nie połączenia wyrzuca mi błąd.

mysql_close($connection);
?>

Zamykamy połączenie 

I teraz tak gdzie mi się wyświetlają te błędy Bo jakoś ani to że udało mi się połączyć ani to że mi sie nie udało nigdzie mi nie wyskakuje :(

0

Sorry ze 2 razy ale wcześniej znalazłem błąd i kolejne moje spostrzeżenie stworzyłem nową bazę o nazwie zalka w niej tabele o nazwie zalka1 i teraz w tym pliku łącze się z baza i jak mam powiedzieć do której tabeli chcę wpisywać dane

0

A teraz opis zapytania o którym miałem poczytać

Zapytania do bazy danych wysyłamy w następujący sposób:

$zaptanie = "treść zapytania SQL";
$idzapytania = mysql_query($zapytanie);

Po takiej operacji zmienna $idzapytania będzie zawierała identyfikator zapytania o ile zapytanie zostanie wykonane pomyślnie. W przypadku, gdy popełniliśmy błąd w zapytaniu zmienna $idzapytania będzie zawierała wartość false.

Odwołujemy się do funkcji wyżej, za pomocą Można by powiedzieć wywołujemy ją

$wykonaj = mysql_query($zapytanie);

więc przenosi lub wywołuje funkcje w linijce wyżej czyli

$zapytanie = "INSERT INTO zalka1 ('imie', 'nazwisko', 'stopien', 'miejscowosc', 'nr') VALUES('$imie','$nazwisko','$stopien','$miejscowosc','$nr')";

tutaj do zmiennej Zapytanie przypisana jest funkcja INSERT INTO która wysyła dane na serwer do tablicy zalka1

Już robi się bardziej klarownie :)

0

Już wiem ze tutaj wyżej podaje o która tabelkę mi chodzi pomimo poprawy dalej nic :( Dane nie przechodzą do tabeli :(

1 użytkowników online, w tym zalogowanych: 0, gości: 1