Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: zapis do bazy
Forum PHP.pl > Forum > PHP
ennics
skrypt wygląda tak:
  1. <?php
  2.  
  3. $cut_SESSION = array_slice($_SESSION, 10);
  4.  
  5. function tableIns( $table )
  6. {
  7.   global $cut_SESSION;
  8.  
  9.   $show_fields = &#092;"SHOW FIELDS FROM \".$table.\"\";
  10.   $query_show = mysql_query( $show_fields );
  11.  
  12.   while ( $row = mysql_fetch_array( $query_show ) )
  13.   {
  14.     $_colNames[$table][] = $row['Field'];
  15.   }
  16.   
  17.   $n_colN = count( $_colNames[$table] )-1;
  18.   $_colNames[$table] = array_slice( $_colNames[$table], 0, $n_colN ); // bez ostatniej kolumny
  19.  
  20.   $sql = &#092;"INSERT INTO \".$table.\" (\";
  21.   foreach ( $_colNames[$table] as $key => $val )
  22.   {
  23.     $sql .= &#092;"`\".$val.\"`, \"; // pola
  24.   }
  25.   $sql .= &#092;"`uniqNr`) VALUES (\"; // ostatnie bez przecinka
  26.   foreach ( $_colNames[$table] as $key => $val )
  27.   {
  28.     if ( ereg( &#092;".+_lp$\", $val ) )
  29.     {
  30.       $sql .= &#092;"'', \"; // autoincrement - puste
  31.     }
  32.     else
  33.     {
  34.       $sql .= &#092;"'$\".$val.\"', \"; // wartosci
  35.     }
  36.   }
  37.   $sql .= &#092;"'$uniqNr');\"; // ostatnie bez przecinka
  38.  
  39.   $wynik = mysql_query ($sql);
  40.   echo mysql_errno() . &#092;": \" . mysql_error() . \"n\";
  41. }
  42. tableIns('dball');
  43.  
  44. ?>

do bazy danych nie zapisuje warotści zmiennych ale ich nazwy w formie $zmienna...
gdzie jest błąd ?
NuLL
Pisze na szybko:
  1. <?php
  2.  
  3. //..
  4. $_colNames[$table] //w tym drugim foreach to jest dobrze questionmark.gif
  5. //.
  6.  
  7. ?>
ennics
działająca fukcja
  1. <?php
  2.  
  3. function tableIns( $table )
  4. {
  5. extract ($_SESSION); // brakowało tego
  6. $show_fields = &#092;"SHOW FIELDS FROM \".$table.\"\";
  7. $query_show = mysql_query( $show_fields );
  8.  
  9. while ( $row = mysql_fetch_array( $query_show ) )
  10. {
  11. $_colNames[$table][] = $row['Field'];
  12. }
  13.  
  14. $n_colN = count( $_colNames[$table] )-1;
  15. $_colNames[$table] = array_slice( $_colNames[$table], 0, $n_colN ); 
  16.  
  17. $sql = &#092;"INSERT INTO \".$table.\" (\";
  18. foreach ( $_colNames[$table] as $key => $val )
  19. {
  20. $sql .= &#092;"`\".$val.\"`, \"; // pola
  21. }
  22. $sql .= &#092;"`uniqNr`) VALUES (\";
  23. foreach ( $_colNames[$table] as $key => $val )
  24. {
  25. if ( ereg( &#092;".+_lp$\", $val ) )
  26. {
  27. $sql .= &#092;"'', \";
  28. }
  29. else
  30. {
  31. $sql .= &#092;"'\".$$val. \"', \"; // i tu było inczej;)
  32. }
  33. }
  34. $sql .= &#092;"'$uniqNr'\";
  35. $sql .= &#092;")\";
  36. $wynik = mysql_query ($sql);
  37. echo mysql_errno() . &#092;": \" . mysql_error() . \"n\";
  38. }
  39.  
  40. ?>
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.