Gibt es so nee Kombi abfrage?
Liest du auch die Antworten richtig, die du bekommst?
Du kannst aber mysqli_num_rows nutzen.
Gibt es so nee Kombi abfrage?
Liest du auch die Antworten richtig, die du bekommst?
Du kannst aber mysqli_num_rows nutzen.
Du solltest dich für einen Weg entscheiden, nicht mal MySQLi und dann PDO.
ich habe diesen Codeteil gesehen:
Der steht so in der Doku.
und frage mich für was man sowas denn braucht? Hat dies Vorteile?
Wenn du ein Script auf mehreren Domain laufen hast, ist das direkte Schreiben der URL immer anzupassen
Ich halte dies für überflüssig und auch gefährlich. Weil über $_SERVER['PHP_SELF'] können auch XSS-Attacken erfolgen.
Das dirname entschärft die Sache.
Die tragen doch zum Fehler finden nicht bei.
Doch!!! Es kann auch vorkommen, dass da steht
output started .....php:1
Dann kann das noch ein ganz anderes Problem sein. Und wo siehst du da einen Link? Für mich stehen da nur Pfade drin, die keinem was nutzen und genau die könntest du unkenntlich machen, Aber eben nicht die relevanten Teile der Fehlermeldung wegschneiden.
Die ist voll ständig.
Nein, ist sie nicht, vollständig ist doch wohl:
ZitatWarning: Cannot modify header information - headers already sent by (output started at /users/sebastian1012/www/homepagebasti1012/gastebuch/admin.php:16) in /users/sebastian1012/www/homepagebasti1012/gastebuch/admin.php on line 22
Entferne mal die echos.
Die ja auch keinen Sinn machen, da man sie nie sieht.
Warning: Cannot modify header information - headers already sent by (output started at /link.php
Und wieder eine verstümmelte Fehlermeldung, der entscheidende Teil fehlt (output started....)
google liefert mit
Warning: Cannot modify header information - headers already sent
Zitat
Ungefähr 1.710.000 Ergebnisse
Das sollte reichen.
Mit 12 px siehtst du kaum einen Unterschied, schreibe mal als Test 20px, dann siehst du es.
Also, Tutorials gibt es zu dem Thema massenhaft. Daher verstehe ich nicht so ganz, warum du da nichts Passendes finden kannst.
Beispieltabelle:
CREATE TABLE `users` (
`id` int(11) NOT NULL,
`user` varchar(32) COLLATE utf8_german2_ci NOT NULL,
`pass` varchar(64) COLLATE utf8_german2_ci NOT NULL,
`email` varchar(64) COLLATE utf8_german2_ci NOT NULL,
`imgurl` varchar(32) COLLATE utf8_german2_ci NOT NULL,
`ondate` datetime NOT NULL,
`isadmin` tinyint(1) NOT NULL DEFAULT 0
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_german2_ci;
--
-- Daten für Tabelle `users`
--
INSERT INTO `users` (`id`, `user`, `pass`, `email`, `imgurl`, `ondate`, `isadmin`) VALUES
(1, 'willi', 'favfvvgERGV-YVsvdfrrfrf', 'willi@example.com', 'images/willi.jpg', '2018-04-02 18:13:03', 0),
(2, 'theo', 'vrfrefvnjalvbehqrlgvbba', 'theo@example.com', 'images/theo.jpg', '2018-04-02 18:13:03', 0),
(3, 'otto', 'refergafrGRegrEGVADDAERRgE', 'otto@example.com', 'images/otto.jpg', '2018-04-02 18:13:03', 1);
Alles anzeigen
Und ein Beispielscript zur Überprüfung des Logins:
<?php
session_start();
if (isset($_POST['user']))
{
$mysqli = mysqli_connect("host", "user", "pw", "datenbank");
if (mysqli_connect_errno())
die("Connect failed: " . mysqli_connect_error());
$query = "Select
`user`,
`pass`,
`email`,
`imgurl`,
`isadmin`
from
`users`
where
`user`='". mysqli_real_escape_string($mysqli, $_POST['user']) . "'";
$result = mysqli_query($mysqli, $query)
or die("MySQL-Error: " . mysqli_error($mysqli));
if (mysqli_num_rows($result))
{
$row = mysqli_fetch_assoc($result);
if (password_verify($_POST['pass'], $row['pass']))
{
$_SESSION['user'] = $row['user'];
$_SESSION['pass'] = $row['pass'];
$_SESSION['email'] = $row['email'];
$_SESSION['imgurl'] = $row['imgurl'];
$_SESSION['isadmin'] = $row['isadmin'];
if ($row['isadmin'])
{
header ("Location: url_zum_admin_bereich");
exit;
}
else
{
header ("Location: url_zum_user_bereich");
exit;
}
}
}
}
?>
Alles anzeigen
In jedem Script, dass nur für den Admin bestimmt ist, schreibst du an den Anfang:
<?php
session_start();
if (! isset($_SESSION['isadmin']) || ! $_SESSION['isadmin'])
{
header ("Location: url_zum_user_bereich_oder_login");
exit;
}
?>
Das ist natürlich alles nicht getestet, aber das Prinzip sollte klar werden.
Bei
div.panel
eine font-size setzen.
Da ich ja 2 Tabellen habe
Das ist schon suboptimal. Eine Tabelle reicht, wenn noch eine Spalte hinzukommt, w.z.B isAdmin oder soetwas in der Art
Sicherlich kann man auch alles auf einmal auslesen oder das Passwort direkt in der query prüfen.
Was auch effektiver wäre.
Man kann einer Person lediglich Ratschläge geben. Ob er diese annimmt ist seine ganz eigene Sache.
Das stimmt, ich werde mich jetzt bei basti1012 komplett zurückhalten, weil ich für mich keinen Sinn darin sehe, Hinweise und Tipps zu geben, wenn sie dann ignoriert werden.
du Antwortest doch irgendein Müll der nix mit den Thema zu tun hat.
Ja, nee, hat nix mit dem Thema zu tun?!?!?!? Ich habe dir nur Hinweise geschrieben, dass das, was du mit dem Script vor hast, garnicht geht! Und das hat dann nichts mit dem Thema zu tun????
Woher willst du wissen womit ich mich beschäftige.
Das weiß ich auch nicht, aber Fakt ist, du fängst etwas an und bringst es dann nicht zu Ende, bestes Beispiel ist dein Gästebuch.
m.scatello : Lass ihn doch seine Wunschseite so erstellen wie er es für richtig findet. Wenn basti1012 darauf besteht dann ist das eben so. Jeder hat seine eigene Sicht dazu.
Du hast ja vom Prinzip her Recht, aber basti fängt drei Baustellen auf einmal, ohne eine davon richtig zu beseitigen, Wichtig ist für ihn immer wieder, dass er seine JavaScript-Sch.... einbaut, die vorrangig völliger Blödsinn ist und nicht zum Ziel führt. Der postet seine sinnlosen Dinge ja nicht nur hier, sondern auch in anderen Foren. Und immer endet das im Chaos. Das ist einfach nur extrem albern. Da verliert man einfach die Lust zu helfen, weil man regelmäßig die Sinnlosigkeit bemerkt.
Zudem kommt noch, dass er sich einfach nicht richtig mit der Materie beschäftigt, sondern wegen jedem Kleinkram in einem Forum nachfragt. Man erkennt leider viel zu oft, dass er sich viel zu wenig mit den Grundlagen beschäftigt. Und das alles mal abgesehen von seiner katastrophalen Rechtschreibung, die oft genug eine Zumutung ist.
Dann scheint
nie zuzutreffen. Warum das so ist, kannst nur du selber herausfinden.
Richtig debuggen
HTML-Seminar.de - mit Videos zum schnellen Lernen, wie man eine Website selbst erstellt.