php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.02.2005, 16:28  
Gast
 
Beiträge: n/a
Standard Sessionübernahme auf folgeseite

Hallo!

Ich mache die ersten Schritte mit Session.
Erst habe ich die Feldinhalte per post weitergegeben. Jetzt will ich die in Session speichern und übergeben.
Ich gehe aber noch auf diese Seite mit post.

Seitdem ich die unten hingeschriebene Übernahme der Sessioneinträge gemacht habe, kommt es zur folgenden Fehlermeldung:

Code:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Diese Einträge habe ich gemacht.
Code:
<?php
include("incl/passwd.php");

// Session starten
session_start();

function getip() {
    //wenn der User über nen Proxy in's Internet geht...
    //muss die IP so "geholt" werden...
    if(getenv("HTTP_X_FORWARDED_FOR"))
        $ip = getenv("HTTP_X_FORWARDED_FOR");
    else
        //ansonsten so...
        $ip = getenv("REMOTE_ADDR");
    return $ip;
}
//ausgeben
$ip = getip();
$host = gethostbyaddr($ip);
 
---- NEU --  SESSION AB HIER ----

$kat=$_SESSION['kat'];
$zahl=$_SESSION['anzahl'];
$anrede=$_SESSION['anrede'];
$realname=$_SESSION['realname'];
$zusatz=$_SESSION['zusatz'];
$strasse=$_SESSION['strasse'];
$plzort=$_SESSION['plzort'];
$telefon=$_SESSION['telefon'];
$email=$_SESSION['email'];
$zahlung=$_SESSION['zahlungswunsch'];
$zeit=$_SESSION['zeit'];
$datum=$_SESSION['datum'];
$date=$_SESSION['date'];
$timestamp=$_SESSION['timestamp'];
$fristdatum=$_SESSION['firstdatum'];

---- NEU --  SESSION BIS HIER ----

//***** Datenbankverbindung herstellen*********
$verbindung = mysql_connect("$DbHost","$DbUser", '');


//***** Datenbank wählen *******************
mysql_select_db("$DbDatabase",$verbindung);


//***** SQL Abfrage in die Variable $sql speichern ******
$sql = "SELECT * FROM $tabelle";

//****** SQL Abfrage starten ************
$result = mysql_query($sql);

//****** Datensätze zählen ************
$num_ticket = mysql_num_rows($result);
//unset ($sql);

$sql = "SELECT nummer, status, block, reihe, platz FROM $tabelle where status = 1 order by nummer ASC limit $zahl";
$erg=mysql_query($sql) or die(mysql_error());
?>
I nedd a help.....
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.02.2005, 16:48  
Erfahrener Benutzer
 
Benutzerbild von JEGO
 
Registriert seit: 01.12.2003
Beiträge: 2.555
PHP-Kenntnisse:
Anfänger
JEGO wird schon bald berühmt werden
Standard

@ah-tonius,

du mußt erst mal die session definieren.

z.b.:
PHP-Code:
$_SESSION['kat'] = $_Request['kat']; 
in dem fall, kommt das $_REQUEST['kat'] von deiner $_POST['kat'];
die du sowie ich das verstanden haben mit einem Form übergibst.
__________________
Gruß JEGO

Ein PHP Script tut, was Du schreibst, nicht was Du willst.
JEGO ist offline  
Alt 13.02.2005, 20:44  
Gast
 
Beiträge: n/a
Standard

Hallo!

Ich habe jetzt Session übergeben und dann (siehe nächsten Code) den Inhalt in z.B. $kat geschrieben.
Das scheint aber nicht zu gehen, da ich mit den Werten nicht auf die Datenbank zugreifen kann.
Welchen Fehler habe ich gemacht, was geht anders?

1)
Code:
//Session übergeben
$_SESSION['kat'] = $_Request['kat'];
$_SESSION['zahl'] = $_Request['anzahl'];
$_SESSION['anrede'] = $_Request['anrede'];
2)
Code:
$kat=$_SESSION['kat'];
$zahl=$_SESSION['anzahl'];
$anrede=$_SESSION['anrede'];
Ich habe 2) gemacht um diese Daten dann wieder so verwenden zu können wie bei der Weitergabe mit Post.

Leider bekomme ich diese Fehlermeldung:
Code:
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
I need a help....
 
Alt 13.02.2005, 20:47  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

PHP-Code:
<?php
$sql 
"SELECT * FROM $tabelle";
?>
$tabelle ist undefiniert.

Außerdem schreibt man variablen nicht in strings.
Buhmann ist offline  
Alt 13.02.2005, 21:04  
Gast
 
Beiträge: n/a
Standard

Meine Abfrage sieht so aus:
Code:
$sql = "SELECT nummer, status, block, reihe, platz FROM $tabelle where status = 1 order by nummer ASC limit $zahl";
$erg=mysql_query($sql) or die(mysql_error());
Das hat alles mit der post-Übergabe geklappt.

Was meinste mit Variablen in strings ??
 
Alt 13.02.2005, 21:07  
Erfahrener Benutzer
 
Registriert seit: 20.01.2005
Beiträge: 1.557
PHP-Kenntnisse:
Fortgeschritten
Buhmann ist zur Zeit noch ein unbeschriebenes Blatt
Buhmann eine Nachricht über ICQ schicken Buhmann eine Nachricht über MSN schicken
Standard

du übergibst $tabelle per POST?
1. verwendet man dann $_POST['tabelle']
2. sind da 2 sql abfragen drin
3. ist es ein MYSQL error, also wird der fehler wohl auch in einem der querys sein.
Buhmann ist offline  
Alt 13.02.2005, 21:27  
Gast
 
Beiträge: n/a
Standard

Hallo

ich schreibe unter erw.php

Code:
<form method="post" action="korb.php">
und weiter unten:
Code:
<input type="submit" value="Die Daten abschicken">
Was soll ich denn da dran ändern?
 
Alt 14.02.2005, 08:26  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Was soll $_Request ein?
Warum nutzt Du kein mysql_error()?
imported_Ben ist offline  
Alt 14.02.2005, 08:39  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Ben
Warum nutzt Du kein mysql_error()?
Nutzt er doch. $tabelle ist nicht definiert - deshalb die Fehlermeldung.

btw: allerdings fehlt die Info, ob register_globals = Off ist.
 
Alt 14.02.2005, 08:42  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Aber nur beim zweiten Mal.
Zitat:
PHP-Code:
//***** SQL Abfrage in die Variable $sql speichern ****** 
$sql "SELECT * FROM $tabelle"

//****** SQL Abfrage starten ************ 
$result mysql_query($sql); 
Nuja. Is auch egal.
imported_Ben ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Folgeseite nach Sql-abfrage PHP Tipps 2005-2 5 27.06.2005 08:32

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ip und timestamp auf folgeseite aktualisiert speichern, ip und zeit auf folgeseite speichern

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:09 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.