Piloten zusammen zählen

Toysoldier

Grünschnabel
Hallo,

ich bin noch recht neu in PHP und habe eine Frage.
In meiner Mysql Datenbank sind die Piloten angegeben. z.B pilot_id=100 usw.
Nun möchte ich für die Homepage einer Airline die Piloten zusammen zählen.
Das heißt pilot_id=100 bis z.B 150 sind dann 50 Piloten etc.
Wäre echt toll wenn ihr mir helfen würdet... meine connect_db.php:
PHP:
<?php
/* CHANGE THIS ACCORDING TO YOUR CONFIGURATION */
$hostName = "localhost";
$userName = "flightk";
$password = "**********";
$dbName = "flkeeper";

/* make connection to database */
mysql_connect($hostName, $userName, $password) or die("Unable to connect to host $hostName");
mysql_select_db($dbName) or die("Unable to select database $dbName");
?>
Meine Zeile die nicht funktioniert da:
Parse error: parse error, unexpected T_STRING in /var/www/vhosts/alex.german-lloyd.com/httpdocs/index.php on line 80
PHP:
<?php 
include("connect_db.php");
UPDATE pilots SET pilot_id = pilot_id +1 WHERE pilot_id = 123 ?>
Wie gesagt bin noch ein :(
 
Hallo

wenn es Dir zum das Zusammenzählen geht, musst Du mit dem Count arbeiten

bsp.

PHP:
$sql = "select count(id) from tabelle where id between 50 and 100";

Mit Deiner Anweisung kann ich nix anfangen, den Ansatz würde man nehmen, wenn man einen Piloten hochzählen würde, z.b. Anzahl der Flüge für einen Piloten.

Dann kannst Du aber die id nicht hochzählen, dies muss ein extra Zählerfeld sein.
 
Ich hab es gerade ausprobiert aber es klapptt nicht :(. Der zeigt zwar wieder die normale Homepage an aber ohne die Aufzählung?!
 
Zuletzt bearbeitet:
Mal ganz doof gefragt:

Was willst du eigentlich?

Wenn du die Anzahl willst einfach die größere minus kleinere also:

Code:
if ( id1 < id2) {
piloten = id2 - id1;
} else {
piloten = id1 - id2;
}
echo piloten;

Oder willst du die auflisten?

dann:

Code:
inhalt = mysql_query("Select * FROM db WHERE id>50 AND id<100");
und dan anzeigen mit foreach!

Oder willst du erstmal checken ob es so viele Piloten gibt?

dann:

Code:
inhalt1 = mysql_query("Select * FROM db WHERE id=50");
inhalt2 = mysql_query("Select * FROM db WHERE id=100");

und dann überprüfen ob die beiden auch da sind!

Also ne besseren Angabe wäre besser!

Ciao Bodo
 
Ich will die Anzahl der Piloten welche in der Mysql Datenbank eingetragen sind, zusammenzählen und das Ergebnis auf der Homepage wiedergeben, damit ich nicht immer von Hand die Pilotenzahl ändern muss, möchte ich per Mysql die Pilotenzahl wiedergeben. Ein Script habe ich nicht...
 
PHP:
<?php
/* Deine Connect sachen hierhin ;) */
$x = $_POST['eins'];
$y = $_POST['zwei'];

$select1 = "SELECT piloten_id FROM tablename WHERE piloten_id = '$x'";
$query2 = mysql_query($select1);
$select2 = "SELECT piloten_id FROM tablename WHERE piloten_id = '$y'";
$query2 = mysql_query($select2);

$id1 = mysql_fetch_array($query1);
$id2 = mysql_fetch_array($query2);

$piloten = $id1[0] - $id2[0];
if ( $piloten >= 0 ) echo 'Sie haben '.$piloten.' Piloten!';
else echo 'Es gab einen Fehler bei ihrer Eingabe.';

?>
<form method="post">
Suche Piloten von:
<br />
<input type="text" name="eins" />
<br />
bis
<br />
<input type="text" name="zwei" />
<br />
<input type="submit" name="click" value="Pr&uuml;fen" />
</form>

Probier das mal ;)
tablename muss halt noch ersetzt werden ;)

edit:
@The Bodo:
Ich gebe dir einen kleinen Tipp ;)
In php schreibt man vor jede Variable ein $, also ein Dollarzeichen.
Wenn schon mosern, dann wenigstens das beherrschen -.-
 
Zuletzt bearbeitet:
Ja sorry...

habe php schon ca nen Jahr nimmer benutzt, weil ich momentan Java lerne..

aber trotzdem wäre es gut, wenn er uns das genau erklären könnte, denn wenn es so ist wie ich das sehe, kann er einfach 2 IDs voneinander subtrahieren!

Wenn er allerdings auch prüfen muss ob schon wieder Piloten gefeuert wurden und seine ID AUTO_INCREMENT ist dann muss er ja auch prüfen ob z. B. Pilot 75 noch da ist!

Und das würde ich gerne wissen!

Es sollte keine Lösung sein sondern erstmal die Möglichkeiten aufzeigen die es gibt!

Und bevor er uns dass mitteill, wird er wahrscheinlich nicht mit unserenAntworten zufrieden sein, denn mittlerweile gibt es genug codes nicht wahr?

MfG Bodo
 
Hallo zusammen,

ich verstehe im Augenblick nur noch Bahnhof, habe ich irgendwas übersehen?

In meiner Mysql Datenbank sind die Piloten angegeben. z.B pilot_id=100 usw.
Nun möchte ich für die Homepage einer Airline die Piloten zusammen zählen.
Das heißt pilot_id=100 bis z.B 150 sind dann 50 Piloten etc.

Wenn man etwas zusammenzählen möchte und dazu noch einen Zahlenraum eingrenzen, gibt es den Count in der SQL. Als Bedingung nutze man bitte den between-Operator.

Warum 2 Abfragen?:confused:
Warum diese dann subtraieren? Wobei ich nicht glaube, dass da einer Ergebnis herauskommt, wenn die ID eine eindeutige ist.

PHP:
<?php require_once('connection/db.conf.php'); ?>
<?php 
function getQuotetext($s){
    $txt=get_magic_quotes_gpc() ? stripslashes($s) : $s; 
	return $txt;
}

$table	= "DeineTabelle";
$id 	= "DeineID";
$az1 	= isset($_POST['az1']) ? $_POST['az1'] : "0";
$az2 	= isset($_POST['az2']) ? $_POST['az2'] : "0";
$pilot 	= "0";

// SQL Statement
$rs = sprintf("SELECT count($id) from $table where $id between %s and %s",
  				getQuotetext($az1),
				getQuotetext($az2)); 
   
  $res = mysql_query($rs) or die(mysql_error());
  $FoundPilot = mysql_num_rows($res);
  if ($FoundPilot) {

 // Variable für die Ausgabe   
	$pilot  = mysql_result($res,0,0);
}
?>
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Piloten zählen</title>
</head>

<body>
<form id="form1" name="form1" method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
  von 
  <input name="az1" type="text" id="az1" size="5" /> 
  bis 
  <input name="az2" type="text" id="az2" size="5" />
  <input type="submit" name="Submit" value="Senden" id="Submit" />
</form>
es sind <?php echo $pilot ?> Piloten eingetragen.
</body>
</html>
 
Zuletzt bearbeitet:
Zurück