ERLEDIGT
NEIN
NEIN
ANTWORTEN
8
8
ZUGRIFFE
439
439
EMPFEHLEN
-
hoi
ich hab folgendes problem
in meiner Datenbank habe ich unteranderem 2 Tabellen 'datum' und 'termine'
in der Tabelle 'datum' gibt es : 'datum' typ date und 'datumID' typ int
Tabelle 'termine' : 'terminID' und 'datumID' typ int sowie
'info' typ text
auf der Startseite wird(soll) aus diesen beiden Tabellen die drei nächsten Termine angezeigt werden
was eigentlich bisher auch klappte
leider werden Termine die ich nun über phpmyadmin eintrage nicht beachtet, sondern nur Termine die bei Erstellung der Datenbank schon drin waren
ich hab überhaupt keine Ahnung wo ich anfangen soll bzw wo das Problem liegen soll, da mit der Funktion die alle Termine anzeigen soll, auch die neuen angezeigt werden
vielen dank schon mal
hier der code
PHP-Code:function termine()
{
$i=0;
$sql = "SELECT terminID FROM termine, datum WHERE datum.datum >= CURDATE() AND termine.datumID = datum.datumID LIMIT 3";
$termine = mysql_query($sql);
if($termine){
while($termine_row = mysql_fetch_array($termine)) {
$termine_erg[$i] = $termine_row[0];
$termin_info = mysql_query("SELECT info FROM termine WHERE terminID = $termine_erg[$i] ");
$datum = mysql_query("SELECT datum FROM datum, termine WHERE terminID = $termine_erg[$i] AND termine.datumID = datum.datumID");
if($termin_info && $datum){
while($termin_row = mysql_fetch_array($termin_info)) {
$lang = strlen($termin_row[0]);
if($lang>=30){
$leer = strpos($termin_row[0]," ",30);
$termin_row[0] = substr($termin_row[0],0,$leer);}
$datum_row = mysql_fetch_array($datum);
$timestamp = strtotime($datum_row[0]);
$datum = date("d.m.Y",$timestamp);
echo "<li><a href=\"termine.php?IDtermin=$termine_erg[$i]\">$datum<br>$termin_row[0]</a></li>";
//echo "<br>";
}
}
}
$i++;
}
}
mfg
Lofwyr
-
Kann es vielleicht sein, das die Tabelle nicht richtig konfiguriert ist
Da ja als erstes die IDs ausgelesen werden, könnte es doch sein, das gar keine IDs über PHPMyAdmin übergeben wurden (AUTO_INCREMENT oder PRIMARY KEY nicht gesetzt). Oder das Datum wird nicht mit übergeben.<?php if ($sein || !$sein) echo "Das ist hier die Frage."; ?>
-
15.09.03 16:44 #3
- Registriert seit
- Aug 2003
- Beiträge
- 175
3 Select abfragen ist auch etwas zu viel.
versuch mal auf eine zu beschränken
-
hoi
also in der Tabelle 'termine' sind 'terminID' und 'datumID' zusammen der Schlüssel, das es vorkommt das mehere Termine an einem Tag sind
'terminID' ist AUTO_INCREMENT
wenn die Tabelle aber nicht richtig konfigurierst ist, müßten doch auch bei der Ausgabe aller Termine Probleme auftreten, oder!?
wie genau meinst du das?Oder das Datum wird nicht mit übergeben.
das Datum trage ich ja manuell einmfg
Lofwyr
-
-also in der Tabelle 'termine' sind 'terminID' und 'datumID' zusammen der
-Schlüssel, das es vorkommt das mehere Termine an einem Tag sind
-'terminID' ist AUTO_INCREMENT
ist die ID bei 'datum' denn auch auto_increment? Ich meine, es könnte ja sein, dass beim anlegen der tabelle die IDs noch im Script mit übergeben wurden. Und wenn ID bei Datum dann nicht auto_increment ist, wird ja immer 0 eingetragen.
-wie genau meinst du das?
-das Datum trage ich ja manuell ein
dachte, das datum wird automatisch übergeben.<?php if ($sein || !$sein) echo "Das ist hier die Frage."; ?>
-
das der quellcode nicht optimal ist, war mir schon klarOriginal geschrieben von boelkstoff
3 Select abfragen ist auch etwas zu viel.
versuch mal auf eine zu beschränken
bin ja auch nen anfänger
aber denkst du das wird das problem lösen?
@rootssw
die id bei 'datum' ist auch auto_incmfg
Lofwyr
-
gib die sql-abfragen doch mal in phpmyadmin ein. dann kannst du ja sehen, welche nicht funktioniert. und welche fehler passieren.
Vielleicht solltest du auch mal zu den if-abfragen else-teile schreiben. z. b. sowas wie
echo "Die Abfrage $sql war nicht erfolgreich";
Dann solltest du wenigstens schon einmal sehen, wo der fehler liegt.<?php if ($sein || !$sein) echo "Das ist hier die Frage."; ?>
-
hoi
hab den code jetzt vereinfacht und auch nur noch eine sql-abfrage - ist auch gleich übersichtlicher
nur leider immer noch nicht funktionstüchtig so wie ich es will
also wenn einer einen ansatz hat, wo das problem liegen könnte
@ rootssw
in phpmyadmin gibt es keine Fehlermeldung
hier brauche ich keine else-Anweisung, weil wenn ich nicht in die erste if komme habe ich kein Ergebnis bei der Abfrage und bei der zweiten if gibt es keine Ausgabe
edit:PHP-Code:function termine()
{
$sql = "SELECT info, datum, terminID FROM termine, datum WHERE datum.datum >= CURDATE() AND termine.datumID = datum.datumID LIMIT 3";
$termine = mysql_query($sql);
if($termine){
while($termine_row = mysql_fetch_array($termine)) {
$lang = strlen($termine_row['info']);
if($lang>=30){ //if-schleife um den string auf ~30 zeichen zu kürzen
$leer = strpos($termine_row['info']," ",30); // erste leerzeichen nach 30 zeichen
$termine_row['info'] = substr($termine_row['info'],0,$leer); // wird an der stelle $leer geschnitten
}//if($lang)
$timestamp = strtotime($termine_row['datum']); //datum in timestamp wandeln
$datum = date("d.m.Y",$timestamp); // timestamp in europ. datum
$id = $termine_row['terminID'];
echo "<li><a href=\"termine.php?IDtermin=$id\">";
echo $datum;
echo "<br>";
echo $termine_row['info'];
echo "</a></li>";
}//while($termine_row)
}//if($termine)
}//function
ich denke mal da läuft was bei der manuellen eingabe falsch oder!? kann ich mir nicht anders erklären
Geändert von Lofwyr (16.09.03 um 09:50 Uhr)
mfg
Lofwyr
-
hoi
habs
puh
mußte noch ORDER BY datum einfügen, weil die Termine in der Tabelle nicht nach Datum sotiert sind
PHP-Code:$sql = "SELECT info, datum, terminID FROM termine, datum WHERE datum.datum >= CURDATE() AND termine.datumID = datum.datumID ORDER BY datum LIMIT 3";
mfg
Lofwyr
Ähnliche Themen
-
Musik im Film verwenden - Was muss beachtet werden?
Von YannikTold im Forum Videoschnitt, Videotechnik & -produktionAntworten: 4Letzter Beitrag: 25.05.10, 09:33 -
Film in PAL - Widescreen drehen, was muss beachtet werden
Von Marius Heil im Forum Videoschnitt, Videotechnik & -produktionAntworten: 1Letzter Beitrag: 31.07.06, 22:42 -
MySql Erweiterung konnte nicht geladen werden - phpMyAdmin -->
Von Maximilius im Forum Relationale DatenbanksystemeAntworten: 8Letzter Beitrag: 05.10.04, 16:51 -
DB-Einträge werden nicht angezeigt
Von hans_schmid im Forum PHPAntworten: 2Letzter Beitrag: 03.09.04, 16:00 -
Einträge werden nicht übernommen
Von pirate man im Forum PHPAntworten: 4Letzter Beitrag: 08.09.02, 20:04





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren