Hey E*Pvpers,
ich habe ein Problem mit einer While Schleife.
Ich lasse die Kontakt Anfragen von meiner Website in eine Datenbank eintragen und schließlich im Admin Panel ausgeben.
Es geht jetzt speziell um die Sortierung der Personen, die eine Anfrage geschickt haben. Ich möchte, dass falls eine Person mir zweimal schreibt, sie wieder in die selbe Sparte einsortiert wird.
Hier ein Bild (Mit dem Fehler)
Wie ihr seht wird die Person allerdings zweimal angezeigt, da auch zwei Anfragen vorhanden sind (An der roten 2 zu erkennen). Allerdings soll die zweite Anfrage wieder bei der ersten mit einsortiert werden und somit dort nur einmal das Feld erscheinen.
Ich hoffe es versteht jemand, was ich meine. Hier nun der entsprechende Code:
Code:
<?php
$sql_kontakt_new = "SELECT
ID,
Vorname,
Nachname,
Strasse,
Hausnummer,
Wohnort,
Email,
Einstelldatum
Bearbeitet
FROM
nachricht
WHERE
Bearbeitet = '0'
ORDER BY
Einstelldatum DESC
";
$result_kontakt_new = mysql_query($sql_kontakt_new) OR die("<pre>\n".$sql_kontakt_new."</pre>\n".mysql_error());
while ($row_kontakt_new = mysql_fetch_assoc($result_kontakt_new)) {
$kontakt_new = mysql_query("SELECT * FROM nachricht WHERE Strasse = '".$row_kontakt_new['Strasse']."' AND Hausnummer = '".$row_kontakt_new['Hausnummer']."' AND Wohnort = '".$row_kontakt_new['Wohnort']."'");
$date = date_create($row_kontakt_new['Einstelldatum']);
echo "
<li>
<a href='?".$row_kontakt_new['Strasse']."".$row_kontakt_new['Hausnummer']."".$row_kontakt_new['Vorname']."".$row_kontakt_new['Nachname']."'>
<span class='contactName'>
<strong>".$row_kontakt_new['Vorname']." ".$row_kontakt_new['Nachname']."<span>(".mysql_num_rows($kontakt_new).")</span></strong>
<i>".$row_kontakt_new['Email']."</i>
</span>
<span class='status_available tipN' title='Noch nicht beantworet'></span>
</a>
</li>
";
}
?>
Wie kann ich die Schleife nun umschreiben, dass es so wie beschrieben angezeigt wird?
Vielen Dank.
Wenn du dir die Daten aus deiner ersten Abfrage zwischenspeicherst, kannst du dir die zweite Abfrage sparen. Das heißt im ersten Schritt liest du erstmal alles ein und speicherst die Daten in einem Array, danach sortierst bzw. gruppierst du es dir wie du es gerne hättest und im letzten Schritt gibst du die passig gruppierten Daten aus.
Einmal quick and dirty, ist ungetestet und könnten Fehler drin sein; vielleicht habe ich auch einen Denkfehler und die Variante funktioniert gar nicht:
PHP Code:
<?php $sql_kontakt_new = "SELECT ID, Vorname, Nachname, Strasse, Hausnummer, Wohnort, Email, Einstelldatum Bearbeitet FROM nachricht WHERE Bearbeitet = '0' ORDER BY Einstelldatum DESC "; $result_kontakt_new = mysql_query($sql_kontakt_new) OR die("<pre>\n".$sql_kontakt_new."</pre>\n".mysql_error());
$contacts = array();
while ($row_kontakt_new = mysql_fetch_assoc($result_kontakt_new)) $contacts[] = $row_kontakt_new;
if($j >= $glength) // There is no such group yet { $groupitem = array('messagecount' => 1); foreach($contacts[$i] as $key => $val) $groupitem[$key] = $val; $groups[] = $groupitem; } else // We got an existing group at index $j that matches the contact at $i $groups[$j]['messagecount']++; }
2 While Schleifen - Problem 12/25/2012 - AutoIt - 7 Replies Abend epvp,
ich hab 2 GuiCreate Forms. $Form1 auf @SW_SHOW und $Form2 auf HIDE.
Damit $Form1 sich schließst und $Form2 sich öffnet wenn ich einen Button in $Form1 drücke, hab ichs so:
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
script problem mit for - next schleifen 10/02/2011 - AutoIt - 5 Replies hi,
wie schon im titel beschrieben wollte ich dich um hilfe bitten
ich will die loop neustarten wenn die bestimmte farbe an der stelle eintritt wär nett wenn ihr mir helfen könntet
die Fehlermeldung lautet
func missi()
Error:"For" statement has no matching "Next" statement
iniwrite & for-schleifen Problem 06/27/2011 - AutoIt - 5 Replies Hallo epvpers,
Ich ab mal ne frage; wie mach ich das wenn zwei Sachen, einmal aus einer Inputbox und einmal aus einer ini-datei nicht übereinstimmen dann eine neue Zeile in der ini angelegt wird(mit einem anderen Namen?)
Ich habs mal so aber da passiert nichts:
if not guictrlread($input5where)=IniRead(@WindowsDir& "\Teamspeak.ini", "Join", "Installpath", "") Then
for $i=0 to 1
IniWrite(@WindowsDir&"\Teamspeak.ini ", "Join", "Installpath"&+1, GUICtrlRead($Input5where))
next
While Schleifen Problem 12/31/2010 - AutoIt - 24 Replies Hi Com.,
ich habe einen Fritzbox ip changer geschrieben.
Alles klappt wunderbar, nur macht mir die while schleife zu schaffen.
Hier mein Script.
#include <INet.au3>
Auto-Schleifen [Problem] 06/23/2010 - Off Topic - 10 Replies Hallo,
und zwar brauche ich Informationen über das Schleifen.
Am besten wäre folgendes:
Woher kommt das Schleifen?
Wie schleift man richtig?