Loading...   Upload Image

Umfrage - Poll mit MySQLTutorials » PHP/MySQL Tutorials » Umfrage - Poll mit MySQL

Verfasst von Alice am 13.09.2009 - wurde schon 17540 mal gelesen

Kategorie: PHP/MySQL
Bewertung:
13x bewertet
Schwierigkeit: mittel
Kommentare: [ 6 ]

Tag - Schlagwort PHP Tag - Schlagwort Poll Tag - Schlagwort Umfrage Tag - Schlagwort MySQL Tag - Schlagwort Datenbank Tag - Schlagwort Script

Umfrage - Poll mit MySQL - Tutorial

Es wurde der Wunsch nach einem Umfrage Script auf MySQL-Basis geaeussert,
nun denn wollen wir uns heute also ein Umfrage Script erstellen ...

Was wird benoetigt?


- PHP / MySql Grundkenntnisse
- 1 MySql Datenbank
- Webspace der PHP unterstuetzt

Wie schauts aus?

- Abstimmen
- Auswertung

Administrations-Ansicht
- Uebersicht
- Umfrage erstellen
- Umfrage bearbeiten

Step 1 - Datenbank


Als erstes wollen wir die Tabelle grafixx_poll anlegen, welche die Frage der Umfrage enthaelt wird(mit PHPMyAdmin)
CREATE TABLE IF NOT EXISTS `grafixx_poll` (
  `id` int(22) NOT NULL AUTO_INCREMENT,
  `frage` text NOT NULL,
  `date` datetime NOT NULL,
  `status` enum('aktiv','inaktiv') NOT NULL,
  PRIMARY KEY (`id`)
);


Anschliessend erstellen wir die Tabelle grafixx_antworten, welche die moeglichen Antworten der Umfrage enthalten wird
CREATE TABLE IF NOT EXISTS `grafixx_antworten` (
  `id` int(22) NOT NULL AUTO_INCREMENT,
  `antwort` text NOT NULL,
  `stimmen` int(22) DEFAULT '0',
  `poll_id` int(22) NOT NULL,
  PRIMARY KEY (`id`)
);


Und nun noch eine dritte Tabelle grafixx_poll_ip, hier werden die IP Adressen der Abstimmer festgehalten, damit nicht mehrfach abgestimmt werden kann...
CREATE TABLE IF NOT EXISTS `grafixx_poll_ip` (
  `poll_id` int(22) NOT NULL,
  `antwort_id` int(22) NOT NULL,
  `ip` varchar(55) NOT NULL,
  KEY `poll_id` (`poll_id`)
);


Step 2 - DatenbankVerbindung | config.inc.php


Config.inc.php heisst unsere Datei mit der wir eine Verbindung zur Datenbank herstellen, ohne die geht gar nichts!
Die config.inc.php wird spaeter ueberall eingebunden, wo eine Verbindung zur DB benoetigt wird.
<?php // config.inc.php

//---------------------------
$host = "localhost";   // Adresse des Datenbankservers, fast immer localhost
$user = "";            // Dein MySQL Benutzername
$pass = "";            // Dein MySQL Passwort
$dbase = "";           // Name der Datenbank
//---------------------------

$connection = mysql_connect($host, $user, $pass) OR DIE ("Keine Verbindung zu der Datenbank moeglich.");
$db = mysql_select_db($dbase, $connection) OR DIE ("Auswahl der Datenbank nicht moeglich."); 

?>

Hier bitte nicht vergessen den MySQL Benutzernamen, das dazugehoerige Passwort und den Namen eurer Datenbank einzutragen!

Step 3 - admin.php


Die Datei admin.php ist fuer das Erstellen, Bearbeiten und Loeschen der Umfrage zustaendig. Hier muss bei $grafixx_name und $grafixx_pass der gewuenschte Username und das dazugehoerige Passwort angegeben werden!
<?php // admin.php

session_start(); // startet die Session 

include('config.inc.php'); // Config.inc.php einbinden

$pfad = $_SERVER['SCRIPT_NAME'];			// aktueller Pfad zur Datei

//---------------------- Logindaten --------------------------------- //

$grafixx_name = "USERNAME";					// Loginname angeben
$grafixx_pass = "PASSWORT";					// Loginpasswort angeben

//------------------------------------------------------------------ //

// Funktion um die DB-Eintraege zu pruefen => SQL Injektions
function clean_it($dirty){ 
    
     // Auswirkungen von magic_quotes_gpc zuruecksetzen, wenn ON
    if (get_magic_quotes_gpc()) {
        $clean = mysql_real_escape_string(stripslashes(htmlspecialchars($dirty)));
    }else{
        $clean = mysql_real_escape_string(htmlspecialchars($dirty));
    }

    return $clean;
}

ob_start();	// startet den Ausgabepuffer

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<title>Grafixx Umfragen</title>
<meta content="IE=EmulateIE7" http-equiv="X-UA-Compatible" />
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<meta content="no" http-equiv="imagetoolbar" />
<meta content="de" http-equiv="Content-Language" />
<link href="style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
<!--

function add_input(){ // Input erstellen
	var wo = document.getElementById('wo');
	var li = document.createElement('li');
	
	var input = document.createElement('input');
		input.type = 'text';
		input.name = 'antwort[]';
		
	li.appendChild(input);		
	li.appendChild(document.createTextNode(' '));

	var button=document.createElement('input');
		button.type = 'button';
		button.className = 'button small';
		button.onclick=function(){delete_input(this);};
		button.value = 'loeschen';

	li.appendChild(button);
	wo.appendChild(li);
}

function delete_input(feld){ // Input loeschen
	feld.parentNode.parentNode.removeChild(feld.parentNode);
}

//-->
</script>
</head>

<body>

<div id="ram">
	<div id="header">
		<h1>Grafixx Umfragen</h1>
	</div>
	<div id="content">
		<?php

if(!isset($_SESSION['login'])) { // wenn keine Session vorhanden

    if(isset($_POST['submit_login'])) { // wenn supbit gedrueckt

        $login_name = strip_tags($_POST['log_user']); // Variable definieren
        $login_pass = strip_tags($_POST['log_pass']); // Variable definieren

        if(empty($login_name) OR empty($login_pass)) { // Pruefen ob Username angegeben wurde
            $message .= 'Bitte geben Sie ihren Usernamen und das Passwort ein ... <br />'; $error = "1";
         }     
     
         if($login_name != $grafixx_name OR $login_pass != $grafixx_pass){  // Angaben auf Korrektheit pruefen
            $message .= 'Zugriff verweigert ... <br />'; $error = "1";
         }
    
        if($error != "1"){ // Wenn kein Fehler war
        
            // session handle-----------------------------
            $_SESSION['login'] = $_SERVER['REMOTE_ADDR']; // Session setzen

            header("Location: $pfad"); // Weiterleiten
        }
    
        if($error == "1"){  // Fehlermeldung ausgeben wenn vorhanden
            echo "<div class=\"error\"><h2>Error ...</h2>\n <p>$message</p></div>\n";
        }

    }
?>
		<form action="" method="post">
			<fieldset>
			<legend><span class="color">Grafixx</span> Login</legend>
			<label>Name</label> <input name="log_user" type="text" /><br />
			<label>Passwort</label> <input name="log_pass" type="password" />
			<br />
			<br />
			<input class="button" name="submit_login" type="submit" value="Login" />
			</fieldset>
		</form>
		<?php    
} // close isset Session login
// ----------------------------------------------- Ende Login ------------------------------------- //

if(isset($_SESSION['login'])){              // Sofern Session vorhanden ... 

$action = clean_it($_GET['action']); 		// Variable definieren

// ----------------------------------------------------------------------
// LOGOUT
// ----------------------------------------------------------------------
if($action == 'logout'){ 
	session_unset();			// Sessionvariable loeschen	
	session_destroy();			// Session zerstoeren

	header("Location: $pfad");	// Weiterleitung => Login
}

// ----------------------------------------------------------------------
// Umfrage erstellen/bearbeiten
// ----------------------------------------------------------------------
if($action == 'new'){

	$id = clean_it($_GET['id']);		// Variable definieren

	if (isset($_POST['submit'])) {
	
		$frage = clean_it($_POST['frage']); 
		$status = clean_it($_POST['status']); 
	
		if(empty($frage) || empty($status) || empty($_POST['antwort'])){ // Pruefen ob alles angegeben
			echo "<div class=\"error\"><h2>Error...</h2><p>Bitte danke alle Felder ausfuellen!</p></div>\n";
	
		}else{ // Sofern alles angegeben wurde
			
			// Frage in DB eintragen
			$umfrage = mysql_query("INSERT INTO grafixx_poll (frage, status, date) VALUES ('$frage','$status', now() )");
			$poll_id = mysql_insert_id(); // POLL ID bestimmen
			
			if($umfrage){ // sofern frage in DB eingetragen => Antworten in DB schreiben
		        foreach($_POST['antwort'] as $antwort){ // antworten eintragen
					$eintragen = mysql_query("INSERT INTO grafixx_antworten (poll_id, antwort) VALUES ('$poll_id','$antwort')");
				}
			}	
				
			if($umfrage AND $eintragen){ // Sofern Eintrag geklappt hat
			
				header("Location: $pfad");	// Weiterleitung
				
			}else{ // Wenn Eintrag nicht geklappt hat => Fehlermeldung
				echo "<div class=\"error\"><h2>Error ...</h2>\n";
				echo "<p>Der Eintrag war leider nicht erfolgreich! ".mysql_error()."</p>\n</div>\n";
			}

		} // close alles angegeben 
	}// close submit

// Formular ausgeben
?>
		<form action="" method="post" name="form">
			<fieldset>
			<legend>Umfrage erstellen</legend>
			<label>Frage</label> <input class="long" name="frage" type="text" />
			<br />
			<label>Antworten</label>
			<ol id="wo">
				<li><input name="antwort[]" type="text" />
				<input class="button small" onclick="delete_input(this);" type="button" value="loeschen" /></li>
				<li><input name="antwort[]" type="text" />
				<input class="button small" onclick="delete_input(this);" type="button" value="loeschen" /></li>
			</ol>
			<input class="button" onclick="add_input();" type="button" value="Antwort hinzufuegen" />
			<br />
			<br />
			<label class="go_left">Status:</label>
			<input class="radio" name="status" type="radio" value="aktiv" /> 
			aktiv
			<input class="radio" name="status" type="radio" value="inaktiv" /> 
			inaktiv
			<br />
			<br class="clear_left" />
			<input class="button" name="submit" type="submit" value="Umfrage erstellen" />
			</fieldset>
		</form>
<?php
} // close action=new


// ----------------------------------------------------------------------
// Umfrage Bearbeiten
// ----------------------------------------------------------------------
if($action == 'edit'){

	$id = clean_it($_GET['id']); // Variable definieren

	if(isset($_GET['id'])){ // Sofern ID uebergeben wurde
	
		// DB Abfragen
		$abfrage = mysql_query("SELECT frage, status FROM grafixx_poll WHERE id = '$id'");
		$row = mysql_fetch_object($abfrage);
		
		$select = mysql_query("SELECT id, antwort FROM grafixx_antworten WHERE poll_id = '$id'");
		$total = mysql_num_rows($select);
	}
	
	if(isset($_POST['submit'])){ // sofern submit gedrueckt wurde

		$frage = clean_it($_POST['frage']); 	// variable definieren
		$status = clean_it($_POST['status']); 	// variable definieren

		if(empty($frage) OR (empty($_POST['antwort']) AND empty($_POST['antworten']))){ // Pruefen ob alles angegeben
			echo "<div class=\"error\"><h2>Error...</h2><p>Bitte danke alle Felder ausfuellen!</p></div>\n";
	
		}else{ // Sofern alles angegeben wurde
			
			// Frage in DB eintragen
			$umfrage = mysql_query("UPDATE grafixx_poll SET frage = '$frage', status = '$status' WHERE id = '$id' ");
			
			if($umfrage){ // sofern frage in DB eingetragen => Antworten in DB schreiben/updaten
				
				if(!empty($_POST['antworten'])){ // Sofern eine neue Antwort dazu gekommen ist
					// Antworten bearbeiten
					foreach($_POST['antworten'] as $antworten){
						// $a_id = id der zu bearbeitenden antwort
						// $antwort = value => neue antwort
				   		foreach ($antworten as $a_id => $antwort){
				   		// DB updaten
						$update = mysql_query("UPDATE grafixx_antworten SET antwort = '$antwort' WHERE id = '$a_id' ");
				   		}
					}  
				}
				
				if(!empty($_POST['antwort'])){ // Sofern eine neue Antwort dazu gekommen ist
			        foreach($_POST['antwort'] as $new_antwort){ // antworten eintragen
						$eintragen = mysql_query("INSERT INTO grafixx_antworten (poll_id, antwort) VALUES ('$id','$new_antwort')");
					}
				}// close !empty	
							
			}	
			
			if($umfrage AND $update OR $eintragen){ // Sofern Eintrag geklappt hat
			
				header("Location: $pfad");	// Weiterleitung
				
			}else{ // Wenn Eintrag nicht geklappt hat => Fehlermeldung
				echo "<div class=\"error\"><h2>Error ...</h2>\n";
				echo "<p>Der Eintrag war leider nicht erfolgreich! ".mysql_error()."</p>\n</div>\n";
			}

		} // close alles angegeben 
	
	}// close submit
      
    // Antwort loeschen  
	if(isset($_POST['delete'])){ 
		
		foreach($_POST['delete'] as $loeschen){
			foreach ($loeschen as $del_id => $v){// zu loeschende ID ermitteln
			
		   		// DB => Antwort loeschen
				$delete = mysql_query("DELETE FROM grafixx_antworten WHERE id = '$del_id' ");
				
				// DB => IP zu der Antwort loeschen
				$del_ip = mysql_query("DELETE FROM grafixx_poll_ip WHERE antwort_id = '$del_id' ");
		   }
		}  
		
		header("Location: ".$pfad."?action=edit&id=".$id ."");	// Weiterleitung 

	} 
// Formular ausgeben
?>
		<form action="" method="post">
			<fieldset>
			<legend>Umfrage bearbeiten</legend>
			<label>Frage</label> <input class="long" name="frage" type="text" value="<?php echo $row->frage; ?>"/>
			<br />
			<label>Antworten</label>
			<ol id="wo">
			<?php 
				while($rows = mysql_fetch_object($select)){
					// vorhadene Antworten ausgeben
					echo "<li><input name=\"antworten[][".$rows->id."]\" type=\"text\" value=\"".$rows->antwort."\" />\n";
					echo "<input class=\"button small\" type=\"submit\" value=\"loeschen\" name=\"delete[][".$rows->id."]\" /></li>\n";
				}
			?>
			</ol>
			<input class="button" onclick="add_input();" type="button" value="Antwort hinzufuegen" />
			<br />
			<br />
			<label class="go_left">Status:</label>
			<input class="radio" name="status" type="radio" value="aktiv" <?php if($row->status == 'aktiv'){ echo "checked=\"checked\""; } ?>/> 
			aktiv
			<input class="radio" name="status" type="radio" value="inaktiv" <?php if($row->status == 'inaktiv'){ echo "checked=\"checked\""; } ?>/> 
			inaktiv
			<br />
			<br class="clear_left" />
			<input class="button" name="submit" type="submit" value="Speichern" />
			</fieldset>
		</form>
<?php
} // close action=edit

// ----------------------------------------------------------------------
// Umfrage Loeschen
// ----------------------------------------------------------------------
if($action == 'loeschen'){

	$id = clean_it($_GET['id']);		// Variable definieren
	$mode = clean_it($_GET['mode']);	// Variable definieren
	
  if(!isset($_GET['mode'])){ // Zur Sicherheit lieber noch mal nachfragen
  
  	echo "<div class=\"error\"><h2>Wirklich ...</h2>\n";
  	echo "<p>Bist du sicher dass du die Umfrage loeschen moechtest?</p> \n";
	echo "<p><a href=\"".$pfad."?action=loeschen&amp;mode=del&id=$id\" class=\"button\">&nbsp;&nbsp;Ja&nbsp;&nbsp;</a>";
	echo "&nbsp;&nbsp;<a href=\"".$pfad."\" class=\"button\">&nbsp;&nbsp;Nein&nbsp;&nbsp;</a></p>\n </div>";

  }else{	  
  
		// Umfrage loeschen
		$delete = mysql_query("DELETE FROM grafixx_poll WHERE id='$id'");

		// Umfrage Optionen loeschen
		$del_a  = mysql_query("DELETE FROM grafixx_antworten WHERE poll_id='$id'");

		// IP's der Umfrage loeschen
		$del_ip  = mysql_query("DELETE FROM grafixx_poll_ip WHERE poll_id='$id'");
		
		if($delete AND $del_a AND $del_ip){ // Wenn Loeschung nicht erfolgt
		
			header("Location: $pfad");	// Weiterleitung 
			
		}else{ // Wenn Eintrag nicht geloescht wurde => Fehlermeldung
				echo "<div class=\"error\"><h2>Error ...</h2>\n";
				echo "<p>Der Eintrag konnte leider nicht geloescht werden! ".mysql_error()."</p>\n</div>\n";
		}
		
  } // close mode
  
} // close action = loeschen

// ----------------------------------------------------------------------
// Umfragen auflisten
// ----------------------------------------------------------------------
if(!isset($_GET['action'])){ // Sofern keine Aktion => umfragen Anzeigen

	echo "<h2>Umfragen</h2>\n";

	// DB-Abfrage => Umfragen
	$abfrage = mysql_query("SELECT id, frage, DATE_FORMAT(date, '%d.%m.%Y') AS datum, status FROM grafixx_poll ORDER BY id DESC");
	$total = mysql_num_rows($abfrage); // Anzahl umfragen
	
	// Umfragen ausgeben
	echo "<ul class=\"list\">\n";
		
	if($total > 0){ // Pruefen ob umfragen vorhanden sind
		while($row = mysql_fetch_object($abfrage)){ 
			echo "<li><div class=\"right\">\n
					<a href=\"".$pfad."?action=edit&amp;id=".$row->id."\">Bearbeiten</a>\n  
					<a href=\"".$pfad."?action=loeschen&amp;id=".$row->id."\">[x]</a>\n</div>\n";
			echo "<strong>".$row->id.".</strong> ".$row->frage."<br />\n ";
			echo "<small>".$row->datum."  <a href=\"".$pfad."?action=edit&amp;id=".$row->id."\">".$row->status."</a> </small></li>\n";
		}
	}else{ // Keine Umfragen vorhanden
		echo "<li>Derzeit sind keine Umfragen vorhanden ...</li>";
	}// close umfragen vorhanden
	
	echo "</ul>\n";
} // close umfragen anzeigen	
?>
</div>
	<div id="sidebar">
		<h2>Welcome <?php echo $grafixx_name; ?><small><a href="?action=logout">
		Logout</a></small></h2>
		<p><a class="the_button" href="<?php echo $pfad; ?>">Umfragen</a>
		<a class="the_button" href="<?php echo $pfad; ?>?action=new">Umfrage 
		erstellen</a></p>
	</div>
<?php 
} // close login

ob_end_flush(); // leert/beendet den Ausgabepuffer

?>
	<div id="footer">
		<p class="right">Valid
		<a href="http://validator.w3.org/check/referer" title="This page validates as XHTML 1.0 Transitional">
		<abbr title="eXtensible HyperText Markup Language">XHTML</abbr></a> | 
		Valid
		<a href="http://jigsaw.w3.org/css-validator/check/referer" title="CSS ist valide!">
		<abbr title="Cascading Style Sheets">CSS</abbr></a>&nbsp;&nbsp; </p>
		<p><a href="http://unnecessary.de">Grafixx Umfragen</a> 
		<a href="http://alice-grafixx.de">Alice-Grafixx.de</a></p>
	</div>
</div>

</body>

</html>


Step 4 - poll.php


Die Datei poll.php ist fuer die Darstellung der Umfragen zustaendig, sie enthaelt 3 Funktionen show_ergebnis() gibt die Auswertung der Umfrage wieder, abstimmen() ist fuer das Abstimmen zustaendig und show_poll() gibt das Formular zum Abstimmen aus, bzw. ruft je nach Bedarf die ersten 2 Funktionen auf ...
<?php // poll.php

 include('config.inc.php'); 	// DB-Verbindung einbinden

function show_ergebnis($id){ // Abstimmungsergebnis anzeigen

	if(is_int($id)){ // Sofern ID uebergeben wurde und ID = Zahl

		// Frage auslesen => nur aktiver Umfragen | INNER JOIN => Anzahl aller abgegebenen Stimmen zaehlen
		$umfrage = mysql_query("SELECT a.frage, SUM(b.stimmen) AS total FROM grafixx_poll a INNER JOIN grafixx_antworten b ON a.id = b.poll_id WHERE a.id = '$id'");
		$poll = mysql_fetch_object($umfrage);
				
		echo "<ul class=\"poll\">\n";
		echo "<li><h2>".$poll->frage."</h2></li>\n"; // Frage ausgeben
	
		// Antworten auslesen
		$abfrage = mysql_query("SELECT antwort, stimmen FROM grafixx_antworten  WHERE poll_id = '$id'");

		$total = $poll->total; // Anzahl aller bisher abgegebener Stimmen

		while($row = mysql_fetch_object($abfrage)){ // Antworten ausgeben
		
	
			if($row->stimmen > 0){ // Prozent berechnen
				$prozent = round($row->stimmen * 100 / $total);
			}else{
				$prozent = 0;
			}	

			echo "<li><div class=\"rate\"><div style=\"width: ".$prozent."%;\" class=\"vote\">&nbsp;</div>".$prozent."%</div>\n";
			echo $row->antwort."</li>\n";
		}
		
		echo "</ul>\n <small>Anzahl abgegebener Stimmen: ".$total."</small>\n";
	} // close id
} // close function show_ergebnis


function abstimmen($poll_id){ // Abstimmen

	$id = intval($_POST['vote']); // Variable definieren

	if(is_int($id)){ // Sofern ID uebergeben wurde und ID = Zahl
					
		$user_ip = $_SERVER['REMOTE_ADDR']; // IP
					
		// Stimme zaehlen
		$update = mysql_query("UPDATE grafixx_antworten SET stimmen = stimmen+1 WHERE id = '$id'");
			
		// Stimme zaehlen => gesamtstimmen
		$update2 = mysql_query("UPDATE grafixx_poll SET stimmen = stimmen+1 WHERE id = '$poll_id'");
	
		// Abstimmung => IP eintragen
		$eintragen = mysql_query("INSERT INTO grafixx_poll_ip (poll_id, antwort_id, ip) VALUES ('$poll_id', '$id', '$user_ip')");
				
		if($update AND $eintragen){ 
			show_ergebnis($poll_id); // Auswertung anzeigen
		}	
		
	} // close sofern zahl 
} // close function abstimmen


function show_poll($id){ // Umfrage ausgeben
	
	if(is_int($id)){ // Pruefen ob $id = Zahl
	
		// Frage auslesen => nur aktiver Umfragen
		$umfrage = mysql_query("SELECT frage FROM grafixx_poll WHERE id = '$id' AND status = 'aktiv'");
		$row = mysql_fetch_object($umfrage);
		 
		$user_ip = $_SERVER['REMOTE_ADDR']; // IP
			
		// pruefen ob schon abgestimmt wurde => DB Abfragen
		$select = mysql_query("SELECT ip FROM grafixx_poll_ip WHERE poll_id = '$id' AND ip = '$user_ip'");
		$check_ip = mysql_num_rows($select); 
	
		if($check_ip > 0){ // Wenn schon abgestimmt wurde
				
			show_ergebnis($id); // Auswertung anzeigen
				
		}else{ // Wenn noch nicht abgestimmt wurde => Optionen anzeigen
	
			if(isset($_POST['abstimmen'])){ // Wenn Abstimmen gedrueckt
			
				abstimmen($id); // Abstimmen

			}else{ // Wenn nicht abstimmen gedrueckt
	
				// Formular ausgeben
				echo "<form action=\"\" method=\"post\">\n";
				echo "<ul class=\"poll\">\n";
				echo "<li><h2>".$row->frage."</h2></li>\n";	// Frage ausgeben
		
				// Antworten auslesen
				$abfrage = mysql_query("SELECT id, antwort FROM grafixx_antworten WHERE poll_id = '$id'");
			
				while($row = mysql_fetch_object($abfrage)){ // Antworten ausgeben
					echo "<li><input type=\"radio\" name=\"vote\" value=\"".$row->id."\" class=\"radio\" /> ".$row->antwort."</li>\n";
				}
		
				echo "<li><input type=\"submit\" name=\"abstimmen\" value=\"Abstimmen\" class=\"button\" /></li>";	
				echo "</ul>\n";
				echo "</form>";
	
			} // close submit
		} // close Check_ip
	} // close id
} // close function show_poll

?>


Step 5 - CSS-Angaben fuer die Darstellung der Umfrage


	ul.poll{
		border: 1px solid #737373;
		border-width: 2px 0px;
		list-style: none;	
		width: 250px;
		margin: 0 0 8px;
		padding: 10px;
	}
	
	ul.poll li{
		margin: 0 0 7px;
		padding: 0;
	}
			.rate{
				background: #E6E6E6;
				height: 20px; 
				margin-bottom: 0px;
				text-align: right;
				font-size: 0.8em;
			}
			
			.vote{
				background: #8BABD1;
				height: 20px; 
				float: left;
			}
			
	.radio{ 
		width: 20px; 
		margin-left: 5px;
	}


Wir haben also nun folgende Dateien


- config.inc.php Stellt die Verbindung zur Datenbank her
- admin.php ist fuer Eintraegen, Loeschen und Bearbeiten der Umfragen zustaendig
- poll.php enthaelt mehrere Fuktionen die fuer die Darstellung einer Umfrage zustaendig sind

Die Umfrage in die eigene Seite einbinden


Um die Umfrage nun auf der eigenen Seite ausgeben zu koennen, einfach folgender Code an die Stelle in der Datei platzieren in der die Umfrage ausgegeben werden soll.
<?php
include('poll.php'); 
show_poll(ID_der_Umfrage); 
?>

Anstelle von ID_der_Umfrage muss die ID der anzuzeigenden Umfrage angegeben werden!
Die ID ist die Zahl, die vor jeder Umfrage im Adminbereich steht...


Wichtig!


Es muss es sich bei der Datei, in der die Umfrage ausgegeben werden soll, um eine PHP-Datei handeln! Sollten sie die Dateien poll.php und confic.inc.php nicht im selben Ordner, wie die Datei in der die Umfrage ausgegeben werden soll, befinden, muessen die Pfadangaben angepasst werden!


Beispiel:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">

<head>
	<title>Grafixx Umfragen</title>
	
	<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
	<meta http-equiv="imagetoolbar" content="no" />
	<meta http-equiv="Content-Language" content="de" />

	<link rel="stylesheet" href="style.css" type="text/css" />
	
</head>
<body>

<div id="ram">
	
	<div id="header">
			<h1>Grafixx Umfragen</h1>
	</div>
	
		
	<div id="content">
	<?php
		 include('poll.php'); 	// Funktion einbinden
		 show_poll(2);		// Umfrage ausgeben
	?>
	</div>

</div>
		
	
</body>
</html>


Tutorial Dateien herunterladen

Kommentar schreibenHinterlasse einen Kommentar

Du musst angemeldet sein, um einen Kommentar zu hinterlassen...

Du bist noch kein Mitglied von Alice-Grafixx.de?
Dann kannst du dich hier kostenlos registrieren ...


       ALL-INKL.COM - Webhosting Server Hosting Domain Provider