Datenbankeintrag ohne Formular

eugster

Mitglied
Hallo zusammen

Ich stehe an: Was gibt's für Möglichkeiten, ein Insert in eine MySQL-DB OHNE Einsatz eines Formulars zu machen? Ich möchte diverse Benutzer-Angaben bei einem Seitenaufruf direkt in die DB abfüllen...

Vielen dank für die Inputs & Gruss, Marc
 
Ich versteh nicht ganz was du meinst.
Formulare sind nur eine Eingabemaske stattdessen kannst du auch eine Datei, URL (Per $_GET[]), HTTP-Post (Per $_POST[]) Sessions, ... in eine MySQL-Tabelle einfügen
 
Die Daten kommen aus diversen Server-Variablen.

mein Problem ist eigentlich, dass ich es bis jetzt nicht zustande gebracht habe, dass ein Insert sofort ausgeführt wird, wenn ich die Seite lade. Also der Klick auf einen Sendknopf nicht vorausgeht...
 
Hallo,
so ungefähr sollte es funktionieren:
PHP:
<?php
    include('connect.php');
    $query = mysql_query('INSERT INTO tabelle SET ip = "'.mysql_real_escape_string($_SERVER['REMOTE_ADDR']).'"') or die(mysql_error());
?>
<html>
    <head></head>
    <body><p>Hier der Inhalt deiner Seite.</p></body>
</html>

mfg
forsterm
 
Hm...

Ich hab da was probiert - aber irgendwasfehlt:

PHP:
require_once('database.php');
require_once('Config.inc');

$verbindung = mysql_connect($hostname_database,$username_database,$password_database) or die ("Verbindungsaufnahme mit MySQL-Server fehlgeschlagen!");
mysql_select_db($database_database,$verbindung) or die ("Verbindungsaufnahme mit Datenbank fehlgeschlagen");

$ergebnis = mysql_query("INSERT INTO counter (site_id, page_id, ip) VALUES (".echo $var_system.",".echo $HTTP_GET_VARS['pageid'].",".echo $_SERVER['REMOTE_ADDR'].")") or die(mysql_error());


danke & gruss
 
Hi,

was fehlt genau?

Ich würde den SQL-Query so ausführen:
PHP:
$ergebnis = mysql_query("INSERT INTO counter (site_id, page_id, ip) VALUES (".$var_system.",".$HTTP_GET_VARS['pageid'].",".$_SERVER['REMOTE_ADDR'].")") or die(mysql_error());
 
Noch ein paar Sicherheitsverbesserungen:
PHP:
<?php

	require_once 'database.php';
	require_once 'Config.inc';

	$verbindung = mysql_connect($hostname_database, $username_database, $password_database)
		or die('Verbindungsaufnahme mit MySQL-Server fehlgeschlagen!');
	mysql_select_db($database_database, $verbindung)
		or die('Verbindungsaufnahme mit Datenbank fehlgeschlagen!');

	$query = '
		INSERT INTO
		        `counter`
		  SET
		        `site_id` = "'.mysql_real_escape_string($var_system).'",
		        `page_id` = "'.mysql_real_escape_string($_GET['pageid']).'",
		        `ip`      = "'.mysql_real_escape_string($_SERVER['REMOTE_ADDR']).'"
		';
	$result = mysql_query($query)
		or die(mysql_error());

?>
 
Zurück