| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |

28-07-2009, 15:05
|
|
only_mac
Registrierter Benutzer
|
|
Registriert seit: Jul 2009
Beiträge: 2
|
|
Ein- und Ausblenden via Button
Hallo,
ich habe ein Javascript eingebaut welches via DIV Bereiche ein- und ausblendet.
PHP-Code:
<script language="javascript"> function Anzeigestatus_aendern(element_id) { if(document.getElementById(element_id).style.display == "block") document.getElementById(element_id).style.display = "none"; else document.getElementById(element_id).style.display = "block"; } </script>
das dann mit einer Checkbox verbunden:
PHP-Code:
<input type="checkbox" onchange="Anzeigestatus_aendern('eins')"
Jetzt möchte ich das alle Beiträge welche im Status "Erledigt" haben ausgeblendet werden.
Ich hatte versucht das über die Ausgabetabelle zu steuern aber das funktioniert nicht.
PHP-Code:
echo "<table width='100%' border='0' cellpadding='2' cellspacing='1'>"; echo "<tr>"; echo "<td width='25' height='30' bgcolor=\"$farbe\">$upload</td>";//Anhänge echo "<td width='25' bgcolor=\"$farbe\">$userkennung_upload</td>";//Anhänge Kommentare echo "<td width='40' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$kommentare</font></td>";//kommentare abgegeben echo "<td width='300' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$betreff</font></td>";//Betreff echo "<td width='170' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$zustaendig_1 $zustaendig_2 $zustaendig_3 $zustaendig_4 $zustaendig_5</font></td>";//Zuständig echo "<td width='140' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$kategorie</font></td>";//kategorie echo "<td width='90' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'><center>$faellig_am</center></font></td>";//Fälligkeitsdatum echo "<td width='150' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$geaendert_am</font></td>";//Änderungsdatum echo "<td width='80' bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$prioritaet</font></td>";//Priorität echo "<td bgcolor=\"$farbe\"><font color='#010000' size='2' face='Arial, Helvetica, sans-serif'>$status</font></td>";//Status echo "</tr>"; echo "</table>";
Muss das über die SQL-Abfrage gesteuert werden?
PHP-Code:
include ("db_connect.php");
$select = mysql_query("SELECT * from data ORDER BY ma_id DESC"); $reihen = mysql_num_rows($select); $zeigen = floor($reihen / 15); if (!$start) { $start = '0'; } $result = mysql_query("select * FROM lohi_marketing.data ORDER BY ma_id DESC limit $start,15"); $arr = mysql_fetch_array($result); $num = mysql_num_rows($result);
for ($i = 0; $i < count($result) ; $i++) if ($num > 0) { for ($i = 0; $i < $num ; $i++) { $ma_id = mysql_result($result, $i, "ma_id"); $betreff = mysql_result($result, $i, "betreff"); $faellig_am = mysql_result($result, $i, "faellig_am"); $prioritaet = mysql_result($result, $i, "prioritaet"); $status = mysql_result($result, $i, "status"); $zustaendig_1 = mysql_result($result, $i, "zustaendig_1"); $zustaendig_2 = mysql_result($result, $i, "zustaendig_2"); $zustaendig_3 = mysql_result($result, $i, "zustaendig_3"); $zustaendig_4 = mysql_result($result, $i, "zustaendig_4"); $zustaendig_5 = mysql_result($result, $i, "zustaendig_5"); $mitbeteiligt_1 = mysql_result($result, $i, "mitbeteiligt_1"); $mitbeteiligt_2 = mysql_result($result, $i, "mitbeteiligt_2"); $mitbeteiligt_3 = mysql_result($result, $i, "mitbeteiligt_3"); $mitbeteiligt_4 = mysql_result($result, $i, "mitbeteiligt_4"); $mitbeteiligt_5 = mysql_result($result, $i, "mitbeteiligt_5"); $kategorie = mysql_result($result, $i, "kategorie"); $aufgabendefinition = mysql_result($result, $i, "aufgabendefinition"); $upload = mysql_result($result, $i, "upload"); $ersteller = mysql_result($result, $i, "ersteller");
Hier die Ausgabe mit dem DIV wo auch bei Klick "Ein" ausgeblendet wird:
PHP-Code:
echo '<div id="eins" style="display:block;">Ein</div>';
|

28-07-2009, 15:41
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
Hallo,
erstmal generell:
Es gibt ein Forum speziell für JavaScript-Probleme.
Dein Code ist unübersichtlich und es macht keinen Spaß sich da durch zu lesen. Benutze bitte Einrückungen, nicht nur für uns hier, sondern auch in deinem eigenen Interesse. Werde die font-Tags los und arbeite stattdessen mit CSS - dein Code wird sich wunderbar verschlanken.
Der Code half mir (auch nach gründlicher Sichtung) nicht, die Ursache deines Problems zu finden, weil du, wie mir scheint, genau die Stellen um die es geht weggelassen hast. Die Beschreibung des Problems (Soll-Zustand) und des Ist-Zustands ist absolut mangelhaft, man kann nur raten, was du überhaupt willst.
Trotzdem hab ich eine Vermutung, woran es liegt. Dein Event-Handler sollte wunderbar funktionieren, wenn der Benutzer die Checkbox ändert. Hast du aber auch über den Initialwert der Checkbox nachgedacht? Den musst du natürlich aus der Datenbank holen, sofern du den auch überhaupt speicherst. Dafür gibt es bei Checkboxen das Attribut selected: wenn du sie mit selected="selected" (XHTML-konform) in die HTML-Datei schreibst, ist sie beim Laden der Seite sofort an. Andernfalls sind Checkboxes immer aus.
Gruß,
Anja
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
Geändert von AmicaNoctis (28-07-2009 um 15:43 Uhr)
Grund: wieder mal Rechtschreibfehler gefunden
|

28-07-2009, 15:43
|
|
h3ll
Registrierter Benutzer
|
|
Registriert seit: Mar 2008
Beiträge: 2.328
|
|
mysql_query liefert eine Ressource. count() erwartet aber als Parameter ein Array und keine Ressource. Die For-Schleifen sind überhaupt sinnlos. Verwende stattdessen while() und foreach().
Verwende kein SELECT *, sondern selektiere genau die Spalten, die du haben willst.
Der <font>-Tag und der <center>-Tag sind veraltet. Heutzutage verwendet man CSS.
Zu deiner Frage:
Code:
WHERE `status` != 'Erledigt'
Sind aber SQL-Grundlagen.
|

28-07-2009, 15:47
|
AmicaNoctis
 Moderatorin
|
|
Registriert seit: Jul 2009
Beiträge: 5.550
|
|
@h3ll: Super Ergänzung, ich bin das ganze nur aus der JS-Perspektive angegangen, bzw. hab es so verstanden, auf den PHP-Code hab ich gar nicht mehr draufgesehen.
__________________
Hast du die Grundlagen zur Fehlersuche gelesen? Hast du Code-Tags benutzt? 
Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
Super, danke! 
|

28-07-2009, 16:42
|
|
PHP-Desaster
PHP Expert
|
|
Registriert seit: Mar 2006
Beiträge: 3.104
|
|
|

29-07-2009, 10:19
|
|
only_mac
Registrierter Benutzer
|
|
Registriert seit: Jul 2009
Beiträge: 2
|
|
Zitat:
Zitat von h3ll
mysql_query liefert eine Ressource. count() erwartet aber als Parameter ein Array und keine Ressource. Die For-Schleifen sind überhaupt sinnlos. Verwende stattdessen while() und foreach().
Verwende kein SELECT *, sondern selektiere genau die Spalten, die du haben willst.
Der <font>-Tag und der <center>-Tag sind veraltet. Heutzutage verwendet man CSS.
Zu deiner Frage:
Code:
WHERE `status` != 'Erledigt'
Sind aber SQL-Grundlagen.
|
Ja, die Grunlagen fehlen mir komplett - bin grade dran zu lernen! (PHP und MySQL)
|

01-08-2009, 00:02
|
|
sonderzeichen
Registrierter Benutzer
|
|
Registriert seit: Jun 2009
Beiträge: 5
|
|
<html>
<head>
<title></title>
<script type="text/javascript">
function toggle(id) {
if (document.getElementById(id).className == 'zu') {
document.getElementById(id).className = 'auf';
} else document.getElementById(id).className = 'zu';
}
</script>
<style type="text/css" rel="stylesheet">
.zu {
display:none;
}
.auf {
display:block;
}
</style>
</head>
<body>
<table border="1">
<tr><td>name: kjhkhkhk <button type="button" onClick="toggle('block')">Knopf</button></td></tr>
<tr id="block" class="zu">
<td>beschreibung</td>
</tr>
</table>
</body>
</html>
so hab ich dieses mal gelöst.. id="block" bei der umsetzung einfach durch eine laufende id ersetzen... bsp.: <?=$id ?>
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|