wie wechseln Sie zu einer anderen php-Seite
Machte ich eine add.php
fügt hinzu, dass einige Dinge, die zu einer Datenbank; danach will ich zu bewegen, um show.php
. Ich habe zum senden eines id-parameter. Das ist mein code:
<?php
ob_start();
session_start();
include('../../includes/connect.php');
$title = $_POST['title'];
$subject = $_POST['subject'];
$file = $_FILES['image']['tmp_name'];
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_size = getimagesize($_FILES['image']['tmp_name']);
$query = "insert into news (title, subject, image) values ('$_POST[title]','$_POST[subject]', '$image')";
$id = mysql_insert_id();
$data = array(
'id' => $id
);
$base = '../../show.php';
$url = $base. '?' . http_build_query($data);
header("Location : $url");
exit();
?>
Aber nichts passiert, ich bin immer noch stecken in add.php
.
- Sind Sie sicher, dass
show.php
ist in diesem Verzeichnis? (../../show.php
) - Wenn etwas nicht funktioniert, aktivieren
error_reporting
. - Ich glaube, Sie können oder verwenden
values ('$title','$subject', '$image')";
stattvalues ('$_POST[title]','$_POST[subject]', '$image')";
. Ich hoffe, jemand wird mich korrigieren, wenn ich falsch bin. - Das ist richtig. Es würde nicht viel Unterschied, da es keine Bereinigung.
- Vielen Dank dafür, es ist gute Informationen zu wissen.
- Sie brauchen nicht die
ob_start()
hier btw. - Bitte entkommen Variablen in einer Abfrage verwendet wird, nicht
addslashes()
. Berücksichtigen Sie auch die Verwendung von vorbereiteten Anweisungen. - was meinst du mit prepared statements?
- Ich bemerkte dies jetzt und denke, dass es nicht trotzdem funktionieren, oder würde er? Diese
$_POST[title]','$_POST[subject]
enthält keine Apostrophe für die Klammern, Variablen, denen man glauben möchte, es müsste$_POST['title']','$_POST['subject']
. - das funktioniert tatsächlich, es glauben oder nicht 🙂
- Oh, ich wusste gar nicht, dass (bis jetzt). Ich war mir sicher, dass es würde haben geworfen ein Fehler.
- Nachschlagen PDO und finden Sie heraus. Schlägt die Scheiße aus mit zu tun, Handbuch der Flucht 🙂
- Danke (für den link) - Buchse, werde ich das tun. Und es ist sicher nicht 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Entfernen Sie die Leerzeichen zwischen
Location
- und Dickdarms, wie z.B.:In der Location-header es sollte kein Raum zwischen; vielleicht ist es das, was einige Fehler.
header("Location : $url");
Habe ich noch nie gesehen
Location :
mit einem Leerzeichen. Versuchen Sie es ohne den Raum:header("Location: $url");
Könnte u geben Sie die Daten für die variable
$url
?