Warning: mysqli_real_escape_string() erwartet parameter 1 to be mysqli, string gegeben

Ich habe einen geschützten Bereich meiner Website, wo ich kann hinzufügen, aktualisieren und löschen von Datenbank-Einträge. Ich bin versucht, zu aktualisieren das script von mysql auf mysqli. Alles funktioniert, außer für die "update" - Teil. Wenn ich füllen Sie die neuen Informationen ein, und klicken Sie auf "update", es gibt mir diese Fehlermeldung:

Warning: mysqli_real_escape_string() erwartet parameter 1 to be mysqli,
string in
/home3/tarb89/public_html/aususrpg.net/charbase/updated.php in Zeile 19

Ich bin mir nicht sicher, was ist hier falsch; ich bin ein totaler newbie, so meine Entschuldigung.

Hier ist meine update.php code:

<?php
    //Create connection
$con=mysqli_connect("xxx","xxx","xxx","xxx");

//Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }


$id = $_GET['id'];

$result = mysqli_query($con,"SELECT * FROM characters WHERE id = '$id'");
$my_array = array($c_z);
extract($my_array);

?>

<form id="FormName" action="../charbase/updated.php" method="post" name="FormName">
<table width="448" border="0" cellspacing="2" cellpadding="0">

<tr>
<td width="150" align="right"><label for="name">Name: </label></td>
<td><input name="name" maxlength="255" type="text" value="<?php echo stripslashes($name) ?>"></td>
</tr>

<tr>
<td colspan="2" align="center">
<input name="" type="submit" value="Update">
<input name="id" type="hidden" value="<?php echo $id ?>">
</td>
</tr>

</table>
</form>

Das andere Problem habe ich mit der update.php Seite ist, wenn es zeigt die Tabelle, sollten die Eingänge die Informationen angezeigt, die bereits in der Datenbank; derzeit wird das Feld name aber der input-Sektion ist leer. Es sollte der name bereits Daten in der Datenbank (dann kann ich ersetzen Sie es mit dem, was ich will, es zu aktualisieren, wie.)

Hier ist die updated.php code:

<?php
//Create connection
$con=mysqli_connect("xxx","xxx","xxx","xxx");

//Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$id = $_POST['id'];

$name = mysqli_real_escape_string(trim($_POST["name"]), $con);

$rsUpdate = mysqli_query($con,"UPDATE characters SET name='$name'
WHERE id='$id'");

if($rsUpdate) { echo "Successfully updated"; } else { die('Invalid query: '.mysql_error()); }
?>

<a href="index.php">Back to index</a>

Jegliche Hilfe würde sehr geschätzt werden. Dieses Ding treibt mich verrückt.


Anderes Problem: siehe oben update.php code.

Wenn ich auf einen link neben einem Datenbank-Eintrag, genannt "Update-Informationen", es dauert mir zu aktualisieren.php?id=charactersid

Aktuell, es zeigt ein leeres Eingabeformular. Ich kann die eingegebenen Informationen und klicken Sie auf "update" und es WIRD korrekt aktualisiert.

Allerdings, wenn ich genommen werde, um die update.php Seite, möchte ich es zur Anzeige der input-form, außer die Werte sollten alle gleich was ist bereits in der Datenbank.

Beispiel:

Was er derzeit zeigt:

Name: [leeres Eingabefeld]

Was ich will, es zu zeigen:

Name: [Aktueller name in der Datenbank gelisteten]

Damit der Wert der Eingabe sollten die Informationen für das Zeichen;, so dass, wenn ich aktualisieren möchten, kann ich sehen, was bereits aufgeführt ist als information für das Zeichen und ändern/löschen/hinzufügen, was ich sonst noch brauchen.

Macht das mehr Sinn?

InformationsquelleAutor Lec | 2014-02-12
Schreibe einen Kommentar