Insert PDO nie działa

0

witam, próbuję wykonać inserta ale niestety nie dodaje nic do bazy danych

    if(!empty($_POST['nc'])){
  if(empty($b)){							
									
echo "Gratulacje, zalozyles postac.";

$pdo = new PDO('mysql:host=localhost;dbname=xxx', $uzytkownik_bazy_danych, $haslo_bazy_danych);
$stmt = $pdo->prepare("INSERT INTO postac(logged, nc, world, plec)VALUES(:logged, :nc)");
$stmt->bindValue(':logged', $_SESSION['id']);
$stmt->bindParam(':nc', $_POST['nc']);

$logged = $_SESSION['id'];
$nc = $_POST['nc'];
$stmt->execute();
print_r($_SESSION); 
}
}

  if($formularz == 1){
                                   echo "<table border=0 align=center style='text-align: center;'>
                                         <form action='?serv=".$_GET['serv']."&do=newchar' method='post'>
                                         <tr><td>Nazwa gracza</td>
										 <td><input name='nc' maxlenght='3'></td></tr>
                                         <tr><td>
                                         </select></td></tr>
                                         <tr><td colspan=2>
										 <input type='submit' value='' id='cc'></td></tr>
                                         </form>
                                         </table>";
                            }
0

http://php.net/manual/en/pdo.error-handling.php

Czy w ogóle ten insert jest wysyłany do bazy ? Tj. czy te Twoje warunki z ifów są spełnione ?

0
Tumeg napisał(a):

http://php.net/manual/en/pdo.error-handling.php

Czy w ogóle ten insert jest wysyłany do bazy ? Tj. czy te Twoje warunki z ifów są spełnione ?

właśnie nie wiem jak mogę zrobić zeby je dało się spełnić tzn jak dodać zeby dodawać jakaś wartość do bazy bo w mysql mialem tak
$_POST['world']."tutaj byla wartosc ktora byla dodawana o bazy','".

0

W INSERT podajesz 4 kolumny do wstawienia, a wartości dalej dajesz tylko dla dwóch.

0
Juhas napisał(a):

W INSERT podajesz 4 kolumny do wstawienia, a wartości dalej dajesz tylko dla dwóch.

nawet jak mam 2 kolumny to i tak nie dodaje

0

Gdzieś musisz mieć błąd. Ustaw serwer tak, żeby Ci pokazywał błędy, bo w tym momencie możemy tylko wróżyć.

0
Juhas napisał(a):

Gdzieś musisz mieć błąd. Ustaw serwer tak, żeby Ci pokazywał błędy, bo w tym momencie możemy tylko wróżyć.

jak to zrobić ? dodaje to Error report ale nic nie wyswietla

0

Inaczej. Czy dostajesz komunikat: "Gratulacje, zalozyles postac." ?

0
Juhas napisał(a):

Inaczej. Czy dostajesz komunikat: "Gratulacje, zalozyles postac." ?

tak ale nie dodaje jej

0

PDO: SQLSTATE[HY093]: Invalid parameter number: parameter was not defined

0

jak moge teraz dodac jakas wartosc?

$prof = 'test';

tak ne dziala

0

No to widzisz, że masz coś nadziabane z parametrami. Nie zdefiniowałeś parametru. Może chodzi o to, że robisz bindValue zamiast bindParam?

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