Willkommen in der Webstatt Zum Webstatt Blog und Stories
Bonze am 01.11.06 21:09

warum kann ich die variable $wort nich in der 2.funktion benutzen?

function zufallswort($host,$username,$userpw,$db){
$con= mysql_connect($host,$username,$userpw) or die(mysql_error());
mysql_select_db($db,$con) or die(mysql_error());
$sql = mysql_query("SELECT * FROM hangman");
$num_rows = mysql_num_rows($sql);
$zufallszahl = rand(1,$num_rows);
$sql = mysql_query("SELECT * FROM hangman WHERE id = '".$zufallszahl."'");
while($row = mysql_fetch_assoc($sql)) {
#echo"$zufallszahl<bR>";
#echo"$row[wort]";
#$wort = $row['wort'];
return($wort = $row['wort']);
}

}
echo $wort;
// wandelt zufallsowort in _ um
$markieren = "a";
function strich($wort, $markieren, $abc){//
$abc = array_flip($abc);
$xy = strtr ($ausschliessen, $abc);
$xy = '['.$xy.']';
$xy = ereg_replace ($xy, '', '[ABCDEFGHIJKLMNOPQRSTUVWXYZ]');
$strich = ereg_replace ($xy, '_', $wort);
echo"$strich";
return $strich;
}

netcup.de Warum gibt es hier Werbung?
sili sili am 01.11.06 22:14

Natürlich kannst du das. Eine Funktion musst du aber zuerst aufrufen, bevor diese ausgeführt wird. ;)
http://ch2.php.net/manual/en/language.functions.php

Bonze am 01.11.06 22:34

so gehts , aba irgendwie wird echo"$wort" auch so ausgegeben ,. was ich ja eigentlich nich will,. error_reporting(E_ALL);
function zufallswort($host,$username,$userpw,$db){
$con= mysql_connect($host,$username,$userpw) or die(mysql_error());
mysql_select_db($db,$con) or die(mysql_error());
$sql = mysql_query("SELECT * FROM hangman");
$num_rows = mysql_num_rows($sql);
$zufallszahl = rand(1,$num_rows);
$sql = mysql_query("SELECT * FROM hangman WHERE id = '".$zufallszahl."'");
while($row = mysql_fetch_assoc($sql)) {
#echo"$zufallszahl<bR>";
#echo"$row[wort]";
$wort = $row['wort'];
}
echo"$wort";
#return($wort);
}
$wort = zufallswort($host,$username,$userpw,$db);


also wärs wohl besser wenn ich auf jeden mit return arbeite,.

Bonze am 02.11.06 15:31

mhh bekomme da immer diese fehlermeldung, und bekomme sie nicht weg, hat keiner nen tipP?
Notice: Undefined variable: wort

nuit nuit am 02.11.06 19:18

wahrscheinlich gibsch den Eintrag mit der Zufallszahl nicht...und dann kommt er erst garnicht in die Schleife rein..was heisst das $wort nicht gesetzt wird...

so kann ich mir das erklären

eidt::::schwaaaaachsinn

bin ich blöd...was schreib ich für einen schmarrn


das liegt daran, da sie einfach auftaucht...schreib mal "var $wort = $row['wort'];"
dann sollte es weg sein

Bonze am 02.11.06 19:35

ok so gehts jetzt :! function zufallswort($host,$username,$userpw,$db){
$con= mysql_connect($host,$username,$userpw) or die(mysql_error());
mysql_select_db($db,$con) or die(mysql_error());
$sql = mysql_query("SELECT * FROM hangman");
$num_rows = mysql_num_rows($sql);
srand ((double)microtime()*1000000);
$zufallszahl = rand(1,$num_rows);
$sql = mysql_query("SELECT * FROM hangman WHERE id = '".$zufallszahl."'") or die(mysql_error());
while($row = mysql_fetch_assoc($sql)) {
return($row['wort']);
}

}

Bonze am 02.11.06 21:07

mhh mal ne frage am rande wie würdet ihr ein hangman script aufbauen?
habs bis jetzt so mir fehlt aba ne entscheidende verbindung
->Funktionen
--->Zufallsowrt/aus der db)
--->Strich(wandeklt das zufallswort in _ _ um und ersetzt event den/die geratenden Buchstaben

weiss aber nich wie ich das richtig machen soll
die geratenden buchstaben sollen in ner session gespeichert werden ,.
hier mal die 2 funtionen
was fehlt noch ?ich weiss nich genau wie ich die ausgabe machen soll,. $abc= array ('A' => 'a','B' => 'b','C' => 'c','D' => 'd','E' => 'e',
'F' => 'f','G' => 'g','H' => 'h','I' => 'i','J' => 'j','K' => 'k','L' => 'l',
'M' => 'm','N' => 'n','O' => 'o','P' => 'p','Q' => 'q','R' => 'r','S' => 's',
'T' => 't','U' => 'u','V' => 'v','W' => 'w','X' => 'x','Y' => 'y','Z' => 'z');
session_start ();

$host = "localhost";
$username = "root";
$userpw = "xxxyx";
$db = "xxxyxyxyxyx";

//gibt ein zufallswort aus
error_reporting(E_ALL);
function zufallswort($host,$username,$userpw,$db){
$con= mysql_connect($host,$username,$userpw) or die(mysql_error());
mysql_select_db($db,$con) or die(mysql_error());
$sql = mysql_query("SELECT * FROM hangman");
$num_rows = mysql_num_rows($sql);
srand ((double)microtime()*1000000);
$zufallszahl = rand(1,$num_rows);
$sql = mysql_query("SELECT * FROM hangman WHERE id = '".$zufallszahl."'") or die(mysql_error());
while($row = mysql_fetch_assoc($sql)) {
return($row['wort']);
}

}
$wort = zufallswort($host,$username,$userpw,$db);

// wandelt zufallsowort in _ um
$markieren ="a";//steht stellvertretend fpr eine eingabe die eingabe soll mit ?b=(buchstabe) gemacht werden
function strich($wort, $markieren, $abc){//
$abc = array_flip($abc);
$xy = strtr ($markieren, $abc);
$xy = '['.$xy.']';
$xy = ereg_replace ($xy, '', '[ABCDEFGHIJKLMNOPQRSTUVWXYZ]');
$strich = ereg_replace ($xy, '_', $wort);
return $strich;
}

Snake am 03.11.06 08:08

wozu hast du da ne schleife, wenn du doch beim ersten durchlauf eh en return machst?

Bonze am 03.11.06 17:39

wie sollte ich es denn sonst machen ?

Al3x0r Al3x0r am 03.11.06 17:41

so ?!:

$row = mysql_fetch_assoc($sql);
return($row['wort']);

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt