2016-11-11 18 views
0

Ich möchte LAST_INSERT_ID() aka Case_ID speichern und es in einer anderen HTML-Seite aufrufen. Wie mache ich das?Speichern Sie PHP-Variable und rufen Sie es auf HTML-Seite

$query.= "insert into Picture (Case_Pic,Case_ID) 
      values ('" .addslashes($imagefile). "', LAST_INSERT_ID())" ; 
+0

brauchen einige weitere Informationen nicht klar Ihre Frage – Karthi

+0

** Gefahr **: Sie sind ** anfällig für [SQL-Injektion Angriffe] (http://bobby-tables.com /) ** dass Sie [verteidigen] müssen (http: // s tackoverflow.com/questions/60174/best-way-to-prevent-sql-injection-in-php) selbst aus. 'addslashes' ist nicht ausreichend. – Quentin

Antwort

0

Speichern Sie es in der Sitzung. Wie Sie ID haben wie folgt:

$id = '112'; 
session_start(); 
$_SESSION['case_id'] = $id; 

und dann in andere HTML-Seite:

<?php 
session_start(); 
//Now you can use $_SESSION['case_id'] however you want here. 
?> 

Ich hoffe, es

0

EDIT hilft: gerade realisiert, dass Sie auch einen Weg benötigen um die letzte Einfüge-ID zu erhalten.

Wie Sie aus Ihrem Code entnehmen können, scheinen Sie 2 Abfragen auszuführen und verwenden die letzte Einfüge-ID der vorherigen Abfrage in die nächste Abfrage, wenn ich mich nicht irre.

Wenn dies der Fall ist, müssen Sie die Abfragen trennen und am Ende Ihrer Fall Tabelle einfügen Abfrage verwenden mysqli_insert_id, wenn Sie MySQLi verwenden (was Sie sollten).

Beispielcode:

$query = "INSERT INTO `Case` (`Case_name`) VALUES ('".mysqli_real_escape_string($db,$case_name)."')"; $q_obj = mysqli_query($db, $query); $case_id = mysqli_insert_id($db); $query2 = "INSERT INTO `Picture` (`Case_Pic`,`Case_ID`) VALUES ('".mysqli_real_escape_string($db, $imagefile)."', '".mysqli_real_escape_string($db, $case_id)."')"; Und dann werden Sie es auf der HTML-Seite über Abfrage-String-Parameter übergeben müssen: header('Location:success.html?case_id='.$case_id);

Und in der HTML-Seite, verwenden Sie JavaScript, um die Query-String zu erhalten Parameter, parse sie und extrahieren Sie die Abfrage case_id Query String-Parameter

+1

es ist eine schlechte Praxis, URL zu verwenden, um wichtige Daten als ID zu senden. Dies kann zu Sicherheitsrisiken führen. – Learner

+0

Einverstanden, aber der serverseitige Code sollte ebenfalls korrekt codiert sein und den Best Practices der Bereinigung ** aller ** Variablen folgen, um SQL-Injection zu verhindern, und dann kann er ohne Probleme verwendet werden. Ich sehe kein Problem mit dem Primärschlüssel einer Tabelle, wenn der serverseitige Code richtig geschrieben wird. Lass es mich wissen, wenn das immer noch falsch ist. –

+0

Ja, aber das bedeutet nicht, dass Sie nicht aufpassen sollten und einen sichereren Weg benutzen, wo immer Sie die Wahl haben. – Learner

Verwandte Themen