Avatar billede mccookie Seniormester
10. december 2012 - 14:34 Der er 4 kommentarer og
1 løsning

Problemer med update ved MySQLi

Hej...

Jeg har læst OleBole's fortræffelige guides omkring MySQLi, og der virker rigtigt godt.... kan bare ikke få den til at opdaterer :-(
Jeg har fint kunne hente data fra databasen på sammen måde, uden problemer!! Dog er det kun nogle af felterne jeg opdaterer i tabellen.....

Håber nogen kan gennemskue det....

Koden ser ud som følger:

$mysqli = new mysqli("","","","");

if (mysqli_connect_errno()) { echo "Der opstod en eller flere fejl";
exit();
}   
   
/* Opret et prepared statement */
if ($stmt = $mysqli->prepare('UPDATE `LM10` SET `knr`=?, `navn`=?, `adresse`=?, `postnr`=?, `postby`=?,`serienummer`=?,`tlf`=?,`version`=?,`note`=?,`note2`=?,`aknr`=?,`vknr`=?,`teknr`=?  WHERE `id`=?')) {

/* Bind parametre */
$stmt->bind_param('issssssssssssi', $knr, $navn, $adresse, $postnr, $postby, $serienummer, $tlf, $version, $note, $note2, $aknr, $vknr, $teknr, $id);

    /* Sæt værdier på parametrene */
  $_REQUEST['id']            = $id;
  $_REQUEST['knr']        = $knr;
  $_REQUEST['navn']        = $navn;
  $_REQUEST['adresse']    = $adresse;
  $_REQUEST['postnr']      = $postnr;
  $_REQUEST['postby']      = $postby;
  $_REQUEST['serienummer'] = $serienummer;
  $_REQUEST['tlf']        = $tlf;
  $_REQUEST['version']    = $version;
  $_REQUEST['note']        = $note;
  $_REQUEST['note2']      = $note2;
  $_REQUEST['aknr']        = $aknr;
  $_REQUEST['vknr']        = $vknr;
  $_REQUEST['teknr']      = $teknr;

NOTE:
De fleste kolonner er VarChar og betragtet som S, ligeledes er textfelt betragtet som S og INT er som I

    /* Eksekver forespørgslen */
    $stmt->execute();

    /* Luk statement */
    $stmt->close();

} else {
    /* Der er opstået en fejl */
    echo 'Der opstod en fejl i erklæringen: ' . $mysqli->error;
}
Avatar billede mccookie Seniormester
10. december 2012 - 14:36 #1
Aarrgggg... har måske selv fundet fejlen!!!
Skal jo vende mine $_REQUEST.....
Avatar billede mccookie Seniormester
10. december 2012 - 14:48 #2
LUKKER...
FEJL40...

Det hjalp åbenbart og desværre at melde det som spørgsmål!!!

Beklager støjen
Avatar billede mccookie Seniormester
10. december 2012 - 14:48 #3
lukker
Avatar billede olebole Juniormester
10. december 2012 - 15:57 #4
<ole>

Generelt er det en god idé at bruge $_POST og $_GET, så man har helt styr på, hvad det er for variabler, man arbejder med - og hvor de kommer fra  =)

/mvh
</bole>
Avatar billede mccookie Seniormester
10. december 2012 - 16:05 #5
Hej Ole

Ja, jeg kan følge din pointe, og bruger jo "blot" $_REQUEST da denne rammer begge, og umiddelbart tror jeg (Og kun tror), at det er "ligemeget" om det er ABC man anvender..... når bare ma validerer det modtagne input!

Men du har jo en pointe ville jeg gætte på, da en ondsindet bruger kunne smide nogle variabler i et link - Og så ved jeg ikke hvem der vinder......

Hmmm.... tror bare jeg kryber til kortset og bruger $_POST og $_GET......

Men endnu engang tak for en superguide :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester