Habe ein problem!

Backticks sind die zeichen auf der Taste neben der Löschtaste (verstanden?). MissPiggy meint also, dass du ein ` verwenden sollst. (Umschalt+diese Taste+Leertaste)
 
ja jetzt funktionier alles soweit doch jetzt speichert er die daten von der ersten abfrage in die 1. zeile die von der 2. in die 2. und so weiter wie kann ich das machen das er alles vom ersten nick in die erste zeile schreibt und alles vom 2. in die 2.? ohne dass ich die 264 felder eintragen muss?
 
Also mit INSERT geht das nicht. Du müsstest bei dem ersten Eintarg INSERT verwenden. bei den anderen 263 dann UPDATE. Das Update muss dann mit WHERE sein, damit das Script weiß, bei welchem Eintrag er weiter machen soll. Wenn du dann mehrere eine weitere Zeile anfängst, musst du wieder mit INSERT anfangen.

Einfacher ginge das ntürlich, wenn du erst alle Daten in einem Array speicherst und dann alles auf einmal einträgst. Das wird bei 264 Einträgen allerdings eine verdammt langer Query.
 
du meinst so:
INSERT into tabelle (`1;2;3;4....`) values ('".$cdata[1].";".$cdata[2].";...')";

aber aknn man das nicht irgendwie mit einer schleife vereinfachen? sodass ich nicht alles hinschreiben muss?
 
über 2 Schleifen:
PHP:
$abfrage="insert into tabelle ("
for ($t=0;$t=264;$t++) {
$abfrage .="'$t',";
}
$abfrage .="values(";
for ($t=0;$t=264;$t++){
$abfrage .="'".$cdata[$t]."',";
}
$abfrage .=");";

aber ich habe fanste eher so verstanden, dass er meinr, du sollst alle cdata-Einträge in einem array speichern, wobei dann $t key und $cdata[$t] value ist, dann könntest du das mit einer foreach-Schleife eintragen.

Was mir immer noch nicht einleuchtet: Du hattest geschrieben, das du zur Fehlerermittlung erstmal die Tabelle statisch machst, eigentlich sollte für jedes Array (also jeden nick) eine eigene Tabelle angelegt werden. Dann versteh ich aber nicht, wie du das meinst, die Daten vom ersten nick sollten in der ersten Spalte, vom 2. in der 2. Spalte gespeichert werden...
 
Zuletzt bearbeitet:
brauchste auch nicht verstehe es selbst auch nicht^^ nee im ernst mir ist aufgefallen das es so viel übersichtlicher ist!

edit:
ganz vergessen meine lösung zu posten!
PHP:
          for($t = 0; $t <= 264; $t++) {
          if ($KEYS!="") $KEYS .= ", ";
	 if ($VALS!="") $VALS .= ", ";
	 $KEYS .= "`".$t."`";
	 $VALS .= "'".$cdata[$t]."'";
          }
         $dbanfrage2 = "INSERT into ".$tabelle2." (".$KEYS.") values (".$VALS.")";
kanns nur nicht testen weil der gamespy server offline ist!
 
Zuletzt bearbeitet:
Du prüfst am Anfang $Keys und $Values (du solltest von Grossbuchstaben absehen, denn die nimmt man eigentlich für Konstanten) auf Inhalt, hast aber garnichts definiert.
Das ist etwas umständlich, wenn es nur drum geht, am Anfang kein , zu haben.
Du kannst aber auch das array $cdata durchlaufen, dann ist es auch egal, wie gross das array ist (ich finde das schöner als die Schleife mit den festen Werten):
PHP:
<?

$keys="";
$values="";
foreach ($cdata as $k => $v){
   $keys .="$k,";
   $values .="'$v',";
}
$sqlab="Insert into tabelle (`$keys`) values ($values)"

so etwa (ist schon etwas spät, ich hoffe das passt auch so ;) ) Ich würde es für günstig halten, dass du, wenn du alles in eine Tabelle schreibst, die nicks mit reinschreibst, dass macht sich für Abfragen besser.
Übrigens:
Du kannst nur Arrays nicht mit in einen string schreiben, der in " steht. Bei allen anderen Variablen wird der Inhalt normal ausgewertet, bei einfachen Hochkommata wird der Text wie er ist übernommen:
PHP:
$satz= "ein Satz mit $a Variablen und einem $b Zeichen" .'Nur $c geht nicht'."Aber ein'$d' geht widerum";
 
Zuletzt bearbeitet:
so das nächste problem^^
und zwar sortiert er die tabelle nicht richtig: klick mich
beim namen macht er das richtig komischerweise!

PHP:
<html>
<head>
<title>Y4 Stats</title>
</head>
<body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000">

<table>
<tr>
<td>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=NICKNAME">Nick:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=POINTS">Gesamtpunkte:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=TSCORE">Team:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=CSCORE">Combat:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=KILLS">Kills:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=DEATH">Deaths:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=KDRATIO">KILLS/Deaths RATIO:</a>
</td>
<td><a href="http://shouter.l-tech.org/bf2/index.php?order=TIME">Zeit:</a>
</td>
<td>Most Played Weapon:
</td>
</tr>

<?php
         $order = $_GET['order'];
         If($order == ""){
         $order = "NICKNAME";
         }
         $dbname = "usrdb_shoutlbv_bf2";
	$tabelle ="stats";
	$dbverbindung = @mysql_connect("localhost", "xxx", "xxx");
	$dbanfrage = "SELECT * from $tabelle";
         mysql_select_db($dbname,$dbverbindung);
         $result = mysql_query("SELECT * from ".$tabelle." ORDER BY ".$order."") or die(mysql_error());
	 while ($stats = mysql_fetch_array ($result))
	 {
	 	$pic = $stats[POINTS];
		if($pic >= 25000){
		$picture = "rang4.png";
		}
		elseif($pic >= 10500){
		$picture = "rang3.png";
		}
		elseif($pic >= 1000){
		$picture = "rang2.png";
		}
		elseif($pic >= 500){
		$picture = "rang1.png";
		}
		elseif($pic < 500){
		$picture = "leer.png";
		}
          echo "<tr>";
          echo "<td>";
          echo "<img src=".$picture.">";
          echo "</td>";
          echo "<td>";
          echo $stats[NICKNAME];
          echo "</td>";
          echo "<td>";
          echo $stats[POINTS];
          echo "</td>";
          echo "<td>";
          echo $stats[TSCORE];
          echo "</td>";
          echo "<td>";
          echo $stats[CSCORE];
          echo "</td>";
          echo "<td>";
          echo $stats[KILLS];
          echo "</td>";
          echo "<td>";
          echo $stats[DEATH];
          echo "</td>";
          echo "<td>";
          echo $stats[KDRATIO];
          echo "</td>";
          echo "<td>";
          echo $stats[TIME];
          echo "</td>";
          echo "<td>";
          echo $stats[MPW];
          echo "</td>";
          echo "</tr>";
          }


	mysql_close ($dbverbindung)
?>
</table>
</body>
</html>
danke!
 
Zurück