Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]weryfikacja formularza oraz zapis do pliku / bazy danych
pablo_83
post
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 16
Dołączył: 11.01.2009
Skąd: wrocław

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


Mam problem z kodem poniżej, parę problemów:
1. W jaki sposób zmienić instrukcje if aby póki formularz nie zostanie poprawnie wypełniony zapis do pliku/bazy nie odbywał się.
2. Dlaczego tablica pojemność jest zapisywana do pliku jako array a nie wartość (value), jak to zmienić (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
3. Mam dwa pliki formularz - html i skrypt obsługujący w php jak zrobić powrót do formularza do źle wypełnionych pól tak żeby dane wprowadzone za pierwszym razem nie znikały, żeby wystarczyło je tylko poprawić.
4. I ostatnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) dlaczego jak zapisuje do bazy to w polach formuarza skrypt rząda ode mnie takich wartości jak nazwy kolumn w bazie? nie mogę wpisać innych wartości dostaje taki komunikat:
Połączono z bazą danych
Unknown column 'Mann' (Mann to wpisana wartość prze ze mnie) in 'field list'

Bardzo proszę o pomoc siedzę nad tym cały dzień, składniowo wszystko mi działa aczkolwiek nie do końca tak jakbym chciał. Help
  1. <?php
  2. $dane = $user."\n".$haslo."\n".$producent."\n".$oznak."\n".$samoch."\n".$typ."\n".$poj."\n".$rok."\n";
  3. if (isset ($_POST['zapis']))  // -------------------------------- 1
  4. {  
  5.      
  6.   if (strlen($producent) ==0)
  7.        {
  8.        echo ("<b>Nie podałeś producenta !</b>");
  9.        }
  10.        else    
  11.           {
  12.           echo ("Producent filtra to: $producent<br  /> ");
  13.           }
  14.      
  15.   function czy_poprawne_dane($producent)      
  16.   {
  17.        echo "$producent --> <font color='";
  18.     if (!ereg('^[A-Z][a-ząćęłńóśźżĄĆĘŁŃÓŚŹŻ]',$producent))
  19.        echo "red'>niepoprawne</font>";
  20.     else
  21.        echo "green'>poprawne</font>";
  22.        echo '';
  23.   }      
  24.   czy_poprawne_dane(''.$producent);
  25.        echo ("<br  />");
  26.  
  27. if (isset($_POST['poj']))// ----------------------------------------  2
  28. {  
  29.    if (is_array($_POST['poj']))
  30.    {
  31.       echo '<br  />Pojemność silnika: ';
  32.    while ($element = each($_POST['poj']))
  33.    {
  34.       echo $element[1].' ';
  35.    }
  36.    }
  37.    else
  38.       echo 'Filtr pasuje do kilku pojemności silnika:'.$_POST['poj'];
  39. }
  40. else
  41.   echo '<b>Nie podałeś pojemnośći !</b><br /> ';
  42.  
  43. if
  44.   ( $user =="" ||$haslo =="" ||$producent ==""||$oznak ==""||$samoch ==""||$typ ==""||$poj ==""||$rok =="")
  45.      {          
  46.       echo ("Zapis do pliku nie udany, nie podałeś wszystkich danych");
  47.      }
  48. else
  49.     {
  50.        $file = "baza.txt";
  51.        $fp = fopen($file, "a");
  52.        flock($fp, 2);
  53.        fwrite($fp, $dane);
  54.        flock($fp, 3);
  55.        echo ("Zapis do pliku udany");
  56.     }
  57. }
  58. else
  59. {
  60.        $con = mysql_connect ("mysql3.yoyo.pl","$user","$haslo") ;
  61.        mysql_select_db ("db772113") ;
  62.        
  63.        if  (!$con)
  64.        {
  65.                echo ("Nie mogę nawiązać połączenia");
  66.        }
  67.         else
  68.        {
  69.            echo ("Połączono z bazą danych<br  />");
  70.              mysql_query("SET NAMES 'utf8'");
  71.              mysql_query("SET collation_connection = utf8_polish_ci");
  72.          
  73.            $wynik = mysql_query("INSERT INTO Filtry (Producent, Oznakowanie, Samochód, Typ, Rok, Pojemność)
  74.            VALUES ($producent, $oznak, $samoch, $typ, $rok, $poj)")
  75.            or die(mysql_error());//----------------- 4
  76.        }
  77.            mysql_close() or die(mysql_error());
  78. }
  79.      
  80. ?>

aha i jeszcze dlaczego jeśli zaznaczę więcej niż jedną pojemność to i tak wyświetla mi komunikat: "wybrałeś pojemność:" a nie tą którą powinien czyli "Filtr pasuje do pojemności silnika" (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

help (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)

Ten post edytował pablo_83 25.05.2009, 23:21:39
Go to the top of the page
+Quote Post

Posty w temacie


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: 15.10.2025 - 19:27