[PHP][HILFE]Variable über 2 Seiten transportieren

03/11/2012 20:25 TimGl#1
Hey Com,

ich hab ein Problem...
ich will eine Eingabe von einem Formular über 2 Seiten weiterleiten.
Also das heißt:

Index.php(da wo das Formular ist)->2.Seite.php->3.Seite.php-> Auslesen der eingabe des Formulares

Ich bekomms irgentwie nicht hin die Variable über die 2 Seiten zu schicken..

LG Tim

Hier mal der Code der Index.php

Code:
<html>
<body>
<form action="votecheck.php" method="POST">
Benutername: <br />
<input type="text" name="benutzername">
<input type="submit" value="Weiter">
</form></body>
</html>
03/11/2012 20:55 PseudoPsycho#2
Setz' einfach auf der 2. Seite eine Session:
PHP Code:
$_SESSION['benutzername']=$_POST['benutzername']; 
...und dann auf Seite 3 entsprechend aufrufen.
03/12/2012 15:25 NotEnoughForYou#3
was machst du denn auf der 2. seite ? wenn du da auch noch Sachen uebergibst kannst du es auch mit einem versteckten input machen
03/12/2012 15:34 TimGl#4
Auf der 2. Seite wird der Benutzername in eine Mysql Datenbank gespeichert. Auf der 3. Seite wird er nicht gebraucht und auf der 4. brauch ich ihn nochmal...
03/12/2012 16:00 NotEnoughForYou#5
dann ist die Variante mit Sessions am geschicktesten. Musst nur vorher acht geben, dass in den Scripten ein session_start() steht.
03/12/2012 18:45 TimGl#6
So habs mit SESSION gelöst :D hab mir Videotutorial auf Youtube angeschaut :P


Nun hab ich aber ein anderes Problem... ich will in der Tabelle "iconomy" ,in der spalte "username" nach einem Benutzername suchen lassen aber es klappt einfach nicht... Hier mal der Code

Quote:
<html>

<?php
//Nimmt Benutzernamen auf
session_start();

$benutzername = $_SESSION["benutzername"];


//Verbindung zur Mysql Datenbank herstellen

$verbindung = mysql_connect("localhost", "vote", "****")
or die ("Fehler beim verbinden mit dem MysqlServer");

mysql_select_db("plugins")
or die ("Verbindung zur Datenbank fehlgeschlagen");



//Schaut nach dem Benutzernamen und setzt Geld +20

$anfrage = mysql_query(" SELECT username FROM iconomy WHERE username LIKE '$benutzername' ");

if($benutzername == $anfrage)
{
echo "Willkommen";
}
else
{
echo "Abgelehnt";
}

?>

</html>
Ich teste ja des Script immer und ich hab auch einen Namen eingetragen und wenn ich einen nicht vorhandenen eingebe kommt ja "Abgelehnt" und wenn ich den richtigen eingeben kommt auch "Abgelehnt"
03/13/2012 07:09 yym3#7
PHP Code:
//Schaut nach dem Benutzernamen und setzt Geld +20

$anfrage mysql_query(" SELECT username FROM iconomy WHERE username = '".$benutzername."'");
$num mysql_num_rows($anfrage);
if(
$num 0)
{
echo 
"Willkommen";
}
else
{
echo 
"Abgelehnt";

Hab mir jetzt nicht deinen gesamten Code angeguckt, aber probier es mal so aus.

Gruß
yym3.
03/13/2012 15:11 TimGl#8
WIE GEIL DANKE ;DD
03/13/2012 19:08 PseudoPsycho#9
Sollte es immernoch nicht funktionieren, würde ich dir dringend empfehlen,
session_start() ganz an den Anfang zu setzen, noch vor jeglichem HTML-Code...
03/13/2012 19:38 TimGl#10
Nun hab ich aber das nächste problem ^^

Ich schreibe ja ein Vote script und wenn ich des drch mache bekomm ich mein Geld + des Votegeld zugeschrieben.

Aber nun zum Problem: wenn ein anderer votet bekommt derjenige mein Geld+Votegeld...

Ich weiß aber nicht worans liegt... glaube es liegt an Session...

Hier mal der Code:

PHP Code:
<html>

<?php

//wie viel Geld sollen die User bekommen?

$betragsetzen 20;

//Nimmt Benutzernamen auf
session_start();

$benutzername $_SESSION["benutzername"];

echo 
"Hallo $benutzername";

//Verbindung zur Mysql Datenbank herstellen

$verbindung mysql_connect("localhost""vote""***")
or die (
"Fehler beim verbinden mit dem MysqlServer");

mysql_select_db("plugins")
or die (
"Verbindung zur Datenbank fehlgeschlagen");


$ergebnis mysql_query("SELECT balance, username FROM iConomy");
while(
$row mysql_fetch_object($ergebnis))
{

  
$betragalt $row->balance;
  
$betragneu $betragalt $betragsetzen;

$aendern "UPDATE iConomy Set
balance = '
$betragneu'
WHERE username = '
$benutzername'";
$update mysql_query($aendern);
header("Location: /vote/fertig.php");
exit();
}

mysql_close($verbindung)
?>

</html>
03/13/2012 19:48 yym3#11
PHP Code:
$aendern "UPDATE iConomy Set
balance = '
$betragneu'
WHERE username = '
$benutzername' LIMIT 1";
$update mysql_query($aendern);
header("Location: /vote/fertig.php");
exit(); 
Probier es so aus, hab erneut nicht dein ganzes Script bewundert.


Gruß
yym3.
03/13/2012 20:04 TimGl#12
Geht immer noch nicht....

Also wenn ich vote bekomme ich ja mein Geld+des Votegeld

Und wenn dann jemand anders votet bekommt dieser MeinGeld+Votegeld...

zu beachten ist aber das der andere sein Benutzernamen eingibt
03/13/2012 20:13 yym3#13
PHP Code:
<?php
session_start
();
?>
<html>

<?php

//wie viel Geld sollen die User bekommen?

$betragsetzen 20;

//Nimmt Benutzernamen auf
$benutzername $_SESSION["benutzername"];

echo 
"Hallo ".$benutzername;

//Verbindung zur Mysql Datenbank herstellen

$verbindung mysql_connect("localhost""vote""***")
or die (
"Fehler beim verbinden mit dem MysqlServer");

mysql_select_db("plugins")
or die (
"Verbindung zur Datenbank fehlgeschlagen");


$ergebnis mysql_query("SELECT balance, username FROM iConomy WHERE username = '".$benutzername."'");
$num mysql_num_rows($ergebnis)

if(
$num 0)
{
  
$row mysql_fetch_object($ergebnis)
  
$betragalt $row->balance;
  
$betragneu $betragalt $betragsetzen;

$aendern "UPDATE iConomy Set
balance = '"
.$betragneu."'
WHERE username = '"
.$benutzername."' LIMIT 1";
$update mysql_query($aendern);
header("Location: /vote/fertig.php");
exit();
} else {
 echo 
'User existiert nicht.';
}

mysql_close($verbindung)
?>

</html>
Klappt das?

Gruß yym3.
03/13/2012 20:18 TimGl#14
DANKE!!!!! ENDLICH GEHT ES!!! TAUSENDMAL DANK!!!