Sponsor-Board.de

Normale Version: MySQLi Update funktioniert nicht [GELÖST]
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Community,

ich habe folgendes Problem. Ich möchte einen Datenbank Eintrag aktualisieren, sobald ich allerdings die Form abschicke (mit Inhalt) wird in der Datenbank in das entsprechende Feld nichts eingetragen. Ich verzweifel langsam. Vielleicht sieht ja jemand meinen Fehler.

config.php

PHP-Code:
// database information //

$database['host'] = 'localhost';
$database['user'] = 'root';
$database['pass'] = '';
$database['name'] = 'clancms-ml';

// connect to database //
$con mysqli_connect($database['host'], $database['user'], $database['pass'], $database['name']);

// change charset //
mysqli_set_charset($con,"utf8"); 


page.php

PHP-Code:
if(isset($_GET['save'])) {

global 
$con;

// variablen
$pgeID $_GET['save'];
$href $_POST['url'];

// sql string
$sql = ("UPDATE pages SET href='$href' WHERE id = '$pgeID';");
$change mysqli_query($con$sql);

if(
$change) {
        echo 
'<b>Erfolg!</b> <code>'.$sql.'</code>';
    }else{
        echo 
'<b>Fehler!</b> <code>'.$sql.'</code>';
        die(
mysqli_error($con));
    }


Das kommt wenn ich das Formular Abschicke
http://pixodoo.de/help/1.JPG(!https)


Das Passiert in der Datenbank

http://pixodoo.de/help/2.JPG(!https)


INSERT, SELECT & DELETE funktionieren ohne Probleme!

Hilfe! Confused


Lösung

Im Formular einbauen:

PHP-Code:
<input type="hidden" name="id" value="<?php echo $pgeID; ?>"/> 



page.php

PHP-Code:
if(isset($_GET['save'])) {

global 
$con;

// variablen
$pgeID $_POST['id'];
$href $_POST['url'];

// sql string
$sql = ("UPDATE pages SET href='$href' WHERE id = '$pgeID';");
$change mysqli_query($con$sql);

if(
$change) {
        echo 
'<b>Erfolg!</b> <code>'.$sql.'</code>';
    }else{
        echo 
'<b>Fehler!</b> <code>'.$sql.'</code>';
        die(
mysqli_error($con));
    }

Baue nach deinem mysqli_query-Aufruf eine Ausgabe des letzten Fehlers mit mysqli_error ( $con ) ein und schau mal, ob du darüber etwas rauskriegst.

Ansonsten bleibt noch das gängige ini_set('display_errors', '1') und error_reporting(E_ALL)


Momentan sieht das für mich auch alles korrekt aus, was du da an Code hast.

PHP-Code:
// sql string
$sql "UPDATE pages SET href='$href' WHERE id = '$pgeID'";
$change mysqli_query($con$sql); 


Sonst prüfe nochmal ob WHERE passt - oder schicke n Screen von der DB.
Escapen nicht vergessen!

@aaron & @Dennis

Code:
UPDATE pages SET href='test' WHERE id = '2';

das gibt mir das Script aus. Keine Fehler meldung von php oder mysqli.

und wenn ich diesen string in den sql vom phpmyadmin einfüge funktioniert es auch... Confused

-
Ich bin echt am ende... Ich verstehe jetzt Garnichts mehr...

Gehe ich über mein Handy auf die Seite und führe das script durch klappt es...

Hab schon probiert ob es vielleicht daran liegt das ich über meine Netzwerk Adresse auf die Seite zu greife allerdings funktioniert es über den PC gar nicht... xD ich könnte kotzen...
Referenz-URLs