Keine Ausgabe von $fragestellung

ava99

Erfahrenes Mitglied
Hallo,
habe ein Problem mit meinem Code:
PHP:
<?

include('connect.php'); 

// Verbindung zum MySQL-Server

$db = mysql_connect ($dbserver, $dbuser, $dbpass);



// Sämtliche Datensatz-Ausgabe durchführen

$resultat = mysql_db_query($dbname, $SQL_Befehl);

$result = mysql_query("SELECT * FROM fragen ");

if (!$result) {

   echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();

   exit;

}

/* Benutze result, unrer der Annahme wir sind hinterher damit fertig */

$row = mysql_fetch_assoc($result);



/* Nun geben wir den Speicher für result frei und fahren in unserem Skript fort */

mysql_free_result($result);

echo "<table>";

echo $row['frage'];

echo "<br>";



echo "</table>";

for ($i=0; $i < 4; $i++){
$result = mysql_query("SELECT * FROM antworten ORDER BY antwort LIMIT 1,4 ");
while($row = mysql_fetch_assoc($result)) { $fragestellung=$row['antwort']; 	}
if (!$result) {
   echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error();
   exit;
}


echo "<INPUT type='radio'value='1'>",$fragestellung;
echo "<br>";
}

echo "<input type='submit' name='Submit' value='Abschicken'>";

$close;
?>

$fragestellung wird nicht ausgegeben.

Wäre für Hilfe Dankbar

Grüße
ava99
 
Hi,
gibt er dir denn eine Fehlermeldung aus? Weil so wie ich das sehe hast du garnicht so richtig zu der datenbank connected. Probier es mal so:
PHP:
...
$db=mysql_connect("db_host","db_name","db_password"); 
mysql_select_db("antworten",$db);

for ($i=0; $i < 4; $i++){ 
$result = mysql_query("SELECT * FROM antworten ORDER BY antwort LIMIT 1,4 "); 
while($row = mysql_fetch_assoc($result)) { $fragestellung=$row['antwort'];     } 
if (!$result) { 
   echo 'Abfrage konnte nicht ausgeführt werden: ' . mysql_error(); 
   exit; 
} 


echo "<INPUT type='radio'value='1'>",$fragestellung; 
echo "<br>"; 
} 

echo "<input type='submit' name='Submit' value='Abschicken'>"; 

$close; 
?>
db_host db_name und db_password noch demendsprechend ausfüllen. :-)
Ich habe es so auf meinem Server ausprobiert und es funktiniert ;)
Grüße
Snowowl
 
Probier mal Folgendes:
PHP:
<?php

	include 'connect.php';

	// Verbindung zum MySQL-Server
	$db = mysql_connect($dbserver, $dbuser, $dbpass);

	// Sämtliche Datensatz-Ausgabe durchführen
	$result = mysql_db_query($dbname, $SQL_Befehl);

	$query = "
		SELECT
		        `frage`
		  FROM
		        `fragen`
		  LIMIT
		        1
		";
	$result = mysql_query($result)
		or die('Abfrage konnte nicht ausgeführt werden: '.mysql_error());
	echo mysql_result($result, 0);

	$query = "
		SELECT
		        *
		  FROM
		        `antworten`
		  ORDER BY
		        `antwort`
		  LIMIT
		        1, 4
		";
	$result = mysql_query($query)
		or die('Abfrage konnte nicht ausgeführt werden: ' . mysql_error());
	while($row = mysql_fetch_assoc($result) ) {
		echo '<input type="radio" name="antwort" value="1">', $row['antwort'];
		echo '<br>';
	}
	echo '<input type="submit" name="Submit">';

?>
 
Hallo,

danke für deine Antwort, er gibt keine Fehlermeldung aus, er gibt gar nichts mit $fragestellung aus.

habe dies nun mittlerweile gelöst.
PHP:
$query = sprintf("SELECT * FROM antworten LIMIT 4");

$result = mysql_query($query);

if (!$result) {
   $message  = 'Invalid query: ' . mysql_error() . "\n";
   $message .= 'Whole query: ' . $query;
   die($message);
}


while ($row = mysql_fetch_assoc($result)) {
	echo $row['antwort'];
 
}

nun hab einen halbwegs funktionierenden Code, der mir die Antworten ausgibt limitiert auf vier, so wie es gern hätte. nun schließt sich das nächste Problem an. die Ausgaben werden mir hintereinander ausgeben.

Vermute mal dass ich hier mit einer Schleife arbeiten muß, nur wie genau baue ich diese ein:


PHP:
while ($row = mysql_fetch_assoc($result)) {
    for ($i = 0; $i<4; $i++){  
          echo $row.$i['antwort'];
 }
}
dies funktioniert nicht so.


Vielen Dank schon im voraus

Grüße
ava99
 
Hi,
also wenn es dann nur noch um diese Schleife geht, müsste sie so aussehen:
PHP:
<?php
$db=mysql_connect("db_host","db_name","db_password");  
mysql_select_db("antworten",$db); 

$result = mysql_query("SELECT * FROM antworten ORDER BY antwort LIMIT 4"); 

while ($row = mysql_fetch_assoc($result))
{ 
	for ($i = 1; $i <= 4; $i++)
	{
  	echo $row['antwort']; 
  }	
}
?>
Hat es dir geholfen? Für was soll das Script überhaupt sein?
M.f.G. :P
Snowowl
 
Hallo,

@Snowowl:
Hab es inzwischen anders gelöst. dieses Script soll, für so eine art wer wird millionär weden.

Dank für deine Hilfe


Grüße
ava99
 
Zurück