Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Błąd w zapytaniu
robert-0627
post
Post #1





Grupa: Zarejestrowani
Postów: 89
Pomógł: 1
Dołączył: 14.02.2007
Skąd: SZCZECINEK

Ostrzeżenie: (20%)
X----


Wszystko działa takj jak chciałem ale mam pytanie czy w tym kodzie jest wszystko ok ?
  1. <?php
  2.  
  3. function dodaj($id, $nick, $tresc){
  4.  
  5. /*sprawdzenie poprawości przekazanych danych*/
  6.  
  7. if($nick == ''){
  8. echo("Brak danych. Proszę wypełnić pole: Imię i nazwisko.");
  9. return;
  10. }
  11.  
  12. if($tresc == ''){
  13. echo("Brak danych. Proszę wypełnić pole: Imię i nazwisko.");
  14. return;
  15. }
  16. if($id == '') $id = 'NULL';
  17.  
  18.  
  19. /*Nawiązanie połączenia z bazą*/
  20.  
  21. if (!$db_lnk = @mysql_connect("mysql3.yoyo.pl", "db486994", "xxxxxxxx")){
  22. echo('Wystąpił błąd podczas próby połączenia z serwerem MySQL...<BR>');
  23. return;
  24. }
  25.  
  26. if(!@mysql_select_db('db486994')){
  27. echo('Wystąpił błąd podczas wyboru bazy danych: biblioteka<BR>');
  28. return;
  29. }
  30.  
  31. /*Utworzenie i wykonanie zapytania*/
  32.  
  33. $query = "INSERT INTO shoutbox VALUES(";
  34. $query .= "'$id', '$nick', '$tresc'";
  35. $query .= ")";
  36.  
  37. if(!mysql_query($query, $db_lnk)){
  38. echo 'Wystąpił błąd: zapytanie zostało odrzucone...<br />Zapytanie: <pre>' . $query . '</pre>Odpowiedź MySQL: <pre>' . mysql_error( $db_lnk ) . '</pre>';
  39. return;
  40. }
  41.  
  42. /*Pobranie informacji o liczbie wstawionych wierszy*/
  43.  
  44. $rowsNo = mysql_affected_rows($db_lnk);
  45.  
  46. echo("Zapytanie zostało wykonane.<br>");
  47. echo("Liczba dodanych rekordów: $rowsNo<br>");
  48.  
  49. /*Zamknięcie połączenia z bazą*/
  50.  
  51. if(!@mysql_close()){
  52. echo('Wystąpił błąd podczas zamykania połączenia z serwerem MySQL...<br>');
  53. }
  54. }
  55.  
  56. if(isSet($_GET['nick']) && isSet($_GET['tresc'])){
  57. dodaj($_GET['$id'], $_GET['nick'], $_GET['tresc']);
  58. }
  59. else{
  60. echo("Niepoprawne dane!");
  61. }
  62.  
  63. ?>

Oraz do czego sluży ten fragment kodu?
  1. <?php
  2. if($id == '') $id = 'NULL';
  3. ?>


Ten post edytował robert-0627 5.04.2008, 10:49:05
Go to the top of the page
+Quote Post
help_mee
post
Post #2





Grupa: Zarejestrowani
Postów: 244
Pomógł: 21
Dołączył: 10.02.2008
Skąd: Załęcze Wielkie

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


gdzie masz definicje:
$db_lnk
Go to the top of the page
+Quote Post
robert-0627
post
Post #3





Grupa: Zarejestrowani
Postów: 89
Pomógł: 1
Dołączył: 14.02.2007
Skąd: SZCZECINEK

Ostrzeżenie: (20%)
X----


A gdzie to powinenem wstawic?
Go to the top of the page
+Quote Post
Kicok
post
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


Zamień sobie:
  1. <?php
  2.  
  3. echo('Wystąpił błąd: zapytanie zostało odrzucone...<BR>');
  4.  
  5. ?>


na:
  1. <?php
  2.  
  3. echo 'Wystąpił błąd: zapytanie zostało odrzucone...<br />Zapytanie: <pre>' . $query . '</pre>Odpowiedź MySQL: <pre>' . mysql_error( $db_lnk ) . '</pre>';
  4.  
  5. ?>



A potem już tylko wyciągnięcie istotnych rzeczy z komunikatu błędu który Ci się pojawi i wklejenie tego na google.pl

Ja błąd widzę już teraz, ale dobrze będzie, jak się sam trochę pomęczysz ;]
Go to the top of the page
+Quote Post
robert-0627
post
Post #5





Grupa: Zarejestrowani
Postów: 89
Pomógł: 1
Dołączył: 14.02.2007
Skąd: SZCZECINEK

Ostrzeżenie: (20%)
X----


Czy to o ten błąd chodzi ? : Column count doesn't match value count at row 1
Go to the top of the page
+Quote Post
pyro
post
Post #6





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

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


tak o ten, liczby kolumn się nie zgadzaja

w tabeli shoutbox max wiecej lub mniej kolumn niz powinno byc

Ten post edytował pyro 5.04.2008, 08:32:18
Go to the top of the page
+Quote Post
robert-0627
post
Post #7





Grupa: Zarejestrowani
Postów: 89
Pomógł: 1
Dołączył: 14.02.2007
Skąd: SZCZECINEK

Ostrzeżenie: (20%)
X----


Zrobilem cos takiego . Wszystko działa . Ale mam pytanie czy w kodzie wszystko jest mniej więcej ok .

<?php

function dodaj($id, $nick, $tresc){

/*sprawdzenie poprawości przekazanych danych*/

if($nick == ''){
echo("Brak danych. Proszę wypełnić pole: Imię i nazwisko.");
return;
}

if($tresc == ''){
echo("Brak danych. Proszę wypełnić pole: Imię i nazwisko.");
return;
}
if($id == '') $id = 'NULL';


/*Nawiązanie połączenia z bazą*/

if (!$db_lnk = @mysql_connect("mysql3.yoyo.pl", "db486994", "kalarepa")){
echo('Wystąpił błąd podczas próby połączenia z serwerem MySQL...<BR>');
return;
}

if(!@mysql_select_db('db486994')){
echo('Wystąpił błąd podczas wyboru bazy danych: biblioteka<BR>');
@mysql_close();
return;
}

/*Utworzenie i wykonanie zapytania*/

$query = "INSERT INTO shoutbox VALUES(";
$query .= "'$id', '$nick', '$tresc'";
$query .= ")";

if(!mysql_query($query, $db_lnk)){
echo 'Wystąpił błąd: zapytanie zostało odrzucone...<br />Zapytanie: <pre>' . $query . '</pre>Odpowiedź MySQL: <pre>' . mysql_error( $db_lnk ) . '</pre>';
@mysql_close();
return;
}

/*Pobranie informacji o liczbie wstawionych wierszy*/

$rowsNo = mysql_affected_rows($db_lnk);

echo("Zapytanie zostało wykonane.<br>");
echo("Liczba dodanych rekordów: $rowsNo<br>");

/*Zamknięcie połączenia z bazą*/

if(!@mysql_close()){
echo('Wystąpił błąd podczas zamykania połączenia z serwerem MySQL...<br>');
}
}

if(isSet($_GET['nick']) && isSet($_GET['tresc'])){
dodaj($_GET['$id'], $_GET['nick'], $_GET['tresc']);
}
else{
echo("Niepoprawne dane!");
}

?>

Ten post edytował robert-0627 5.04.2008, 10:46:00
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: 24.08.2025 - 21:15