Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Nowy rekord dodaje się do bazy w dziwny sposób (php + MySQL), nie wiem jak ładniej nazwać ten temat ;)
Maf
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 16.10.2006

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


Krótko i treściwie; ten oto kod:
Kod
<?php
    $isbn = '345-345-123-5423';
    $autor = 'Ktos';
    $tytul = 'Bamboocha';
    $cena = 39.90;
    
    $db = new    mysqli('localhost', 'ksiazki', 'pass', 'ksiazki');

    $stmt = $db->prepare("INSERT INTO ksiazki VALUES (?, ?, ?, ?)");
    $stmt->bind_param('sssd', $isbn, $autor, $tytul, $cena);
    $stmt->execute();
    echo $stmt->affected_rows;
    $stmt->close();
    $db->close();
?>

powinien dodać nowy w pełni wypełniony rekord do tabeli ksiazki w bazie ksiazki. Nowy rekord owszem jest dodany, ale pierwsze 3 pola (tekstowe) sa puste, a czwarte (float) ma wartość 0.00. Czy macie jakiś pomysł?

Ten post edytował Maf 17.10.2006, 09:38:03
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Maf
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 16.10.2006

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


1. Struktura tabeli 'ksiazki':
isbn char(13) not null primary key,
autor char(50),
tytul char(100),
cena float(5,2)

2 & 3. Zmienilem kod na:
Kod
<?php
    $isbn = '345-345-123-5423';
    $autor = 'Ktos';
    $tytul = 'Bamboocha';
    $cena = 39.90;
    
    $db = new    mysqli('localhost', 'ksiazki', 'pass', 'ksiazki');

    $stmt = $db->prepare("INSERT INTO ksiazki VALUES (?, ?, ?, ?)");
    echo 'bind_param: '.$stmt->bind_param('sssd', $isbn, $autor, $tytul, $cena)."\n";
    echo 'execute: '.$stmt->execute()."\n";
    echo 'affected_rows: '.$stmt->affected_rows."\n";
    $stmt->close();
    $db->close();
?>


Wyniki:
Kod
bind_param: 1
execute: 1
affected_rows: 1
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: 17.10.2025 - 09:26