14. september 2008 - 16:41
Der er
23 kommentarer og 1 løsning
Visning af php
Hej Eksperter, Hvorfor kan den ikke vise det med der kommer under "Flyt spiller" i nedenstående fil: <?php require 'common.php'; $db = new Database(); $classlist = $db->get_classes(); $page_title = ""; ?> <? require 'header.php' ?> <div align="center"> <table border="0" width="500" cellpadding="0" height="500" bordercolor="#000000" style="border-collapse: collapse"> <tr> <td valign="top"> <table border="1" width="100%" style="border-width: 0px" cellspacing="0" cellpadding="0"> <tr> <td style="border-style: none; border-width: medium"> <p align="left"><font face="Verdana" size="1"> ···································································<br> <b><br> </b><br> ···································································</font></td> <td style="border-style: none; border-width: medium" width="169"> <font face="Verdana" size="1"> ·································<br> <br> <br> ·································</font></td> </tr> </table> <h2><font face="Verdana" size="1">Opret ny spiller:</font></h2> <ul> <font face="Verdana" size="1"> <? foreach($classlist as $class) { ?> </font> <li><a href="new.php?id=<?=$class['id']?>"><font size="1" face="Verdana"><?=$class['navn']?></font></a><font size="1" face="Verdana"></li> <? } ?> </font> </ul> <h2><font face="Verdana" size="1">Overflytning af spiller:</font></h2> <ul> <li><font face="Verdana" size="1"><a href="move.php">Flyt spiller</a></font></li> </ul> <font face="Verdana" size="1"> <? if($db) { $queue = $db->get_queue(); ?> </font> <u1> <h2><font face="Verdana" size="1">E-mail kø:</font></h2></u1> <font size="1" face="Verdana"><form method="post" action="email.php"> <input type="hidden" name="id" value="<?=$id?>" /> <input type="submit" name="mailit" value="Send E-mail" style="border: 1px solid #000000; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px; background-color: #FFFFFF;" /></form></font> <ul> <font face="Verdana" size="1"> <?php foreach($queue as $id => $n)?> <? { ?> </font> <li><form method="post" action="email.php"><font face="Verdana" size="1"> <font size="1"><input type="hidden" name="id" value="<?=$id?>" /> </font><?=htmlentities($n)?> <input type="submit" name="delete" value="Slet" style="border: 1px solid #000000; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px; background-color: #FFFFFF" /></font></form> <font face="Verdana" size="1"> <? } ?> </ul> <p align="center"> ····································································································<br> </font> </td> </tr> </div> <? } ?><? require 'footer.php' ?> På forhånd tak.
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
14. september 2008 - 18:41
#1
Ved ikke lige hvorfor din kode ikke vises. Prøv at echo dine ting ud i stedet for at afslutte din PHP. Desuden burde du begynde at lave noget nyere kode. Det MEGET gammelt det der. Det er nok 6-7 år siden jeg har set et <font> tag i brug. :o) Du kunne læse lidt op på CSS. Hvad står der evt. i din class med dine db kald. //mcardle
14. september 2008 - 18:41
#2
Kan det ikke være din IF der fejler: <? if($db) { $queue = $db->get_queue(); ?> ???
14. september 2008 - 18:44
#3
Du har heller ikke nogen </table> slut tag efter sidste <tr> //mcardle
14. september 2008 - 19:11
#4
Det er muligt at det er if sætningen den er gal med - men har du evt. et forslag til hvad der kan ændres? Ved godt det er noget gammelt kode ;D men har også haft det til at ligge i en del år efter hånden ;)
14. september 2008 - 19:21
#5
Du kunne jo starte med: <? if($db){ $queue = $db->get_queue(); echo "Vi er inde i IF'en"; ?> Og så her: <? } ?><? require 'footer.php' ?> rette til: <? }else{ echo "Vi er uden for IF'en";} ?><? require 'footer.php' ?>
14. september 2008 - 19:27
#6
Det gør da ingen forskel på problemet ?!
14. september 2008 - 19:31
#7
Nej, det kaldes debugning. ;) Så man ser, hvordan koden arbejder, og derved kan finde problemet.
14. september 2008 - 19:34
#8
Tak W13, det tyder netop på fk87 har brug for en støttepædago eller oversætter! :o)
14. september 2008 - 19:35
#9
Så udskriver den : Vi er uden for IF'en
14. september 2008 - 19:45
#10
Så skal du igen kigge på om denne er korrekt: <? if($db) Det kunne det jo tyde på den ikke er.
14. september 2008 - 19:49
#11
Kan det have noget med nedenstående: function get_queue() { $res = mysql_query("SELECT id, subject FROM badminton_email ORDER BY id DESC LIMIT 10"); $r = array(); while($row = mysql_fetch_assoc($res)) $r[$row['id']] = $row['subject']; return $r; } function get_complete_queue() { $res = mysql_query("SELECT id, subject, payload FROM badminton_email ORDER BY id DESC"); $r = array(); while($row = mysql_fetch_assoc($res)) $r[$row['id']] = $row; return $r; } function delete_from_queue($id) { mysql_query(sprintf("DELETE FROM badminton_email WHERE id = '%d' LIMIT 1", $id)); }
14. september 2008 - 19:52
#12
Der er ikke nogen af dine kald som lukker $db. Inden du har: <? if($db) { $queue = $db->get_queue(); ?> prøv så: <? var_dump($db); if($db) { $queue = $db->get_queue(); ?>
14. september 2008 - 19:55
#13
Så udskriver den: object(database)(0) { } Vi er uden for IF'en
14. september 2008 - 20:05
#14
Måske du skulle prøve at vise din $db klasse.
14. september 2008 - 21:02
#15
<?php session_start(); require 'config.php'; // Check login - if not login.php if( basename($_SERVER['SCRIPT_NAME']) != 'login.php' ) { if(empty($_SESSION['username'])) { header("Location: login.php"); exit; } } // HTML helpers class Form { function text_field($name) { return '<input type="text" name="'.$name.'" id="'.$name.'"/>'; } function date_field($name) { return $this->text_field($name); } function hidden_field($name,$value) { return '<input type="hidden" name="'.$name.'" value="'.htmlentities($value).'"/>'; } function dropdown_field($name,$values) { $r = ''; $r = '<select name="'.$name.'">'; if($values and is_array($values)) { foreach($values as $k => $v) { $r .= "<option name=\"$k\">$v</option>"; } } $r .= '</select>'; return $r; } function puretext($values) { $r = ''; if($values and is_array($values)) { foreach($values as $k => $v) { $r .= $v . ', '; } } if (strlen($r)) { $r = substr( $r , 0 , -2 ); } return $r; } } class Database { function Database() { mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS) or die(mysql_error()); mysql_select_db(MYSQL_DB) or die(mysql_error()); } function is_flagged($class_id) { $res = mysql_query(sprintf(" SELECT flag FROM badminton_hold WHERE id = '%d' ", $class_id)) or die(mysql_error()); $row = mysql_fetch_assoc($res); return $row && $row['flag']; } function get_class_name_for($class_id) { $res = mysql_query(sprintf(" SELECT navn FROM badminton_hold WHERE id = '%d' ", $class_id)) or die(mysql_error()); $row = mysql_fetch_assoc($res); return $row['navn']; } function get_classes() { $res = mysql_query(" SELECT * FROM badminton_hold ORDER BY navn ") or die(mysql_error()); $r = array(); while($row = mysql_fetch_assoc($res)) $r[] = $row; return $r; } function get_classes_for_dropdown() { $res = mysql_query($sql=sprintf(" SELECT id, navn FROM badminton_hold ORDER BY navn ",$class_id)) or die(mysql_error()); $r = array(); while($row = mysql_fetch_array($res)) { $r[$row[1]] = $row[1]; } return $r; } function get_class_times_for_dropdown($class_id) { $res = mysql_query($sql=sprintf(" SELECT id, tider FROM badminton_hold_tider WHERE hold_id = '%d' ",$class_id)) or die(mysql_error()); $r = array(); while($row = mysql_fetch_array($res)) { $r[$row[1]] = $row[1]; } return $r; } function add($subject,$data) { $payload = serialize($data); mysql_query(sprintf(" INSERT INTO badminton_email(subject, payload) VALUES('%s','%s') ", mysql_real_escape_string($subject), mysql_real_escape_string($payload))) or die(mysql_error()); } function get_queue() { $res = mysql_query("SELECT id, subject FROM badminton_email ORDER BY id DESC LIMIT 10"); $r = array(); while($row = mysql_fetch_assoc($res)) $r[$row['id']] = $row['subject']; return $r; } function get_complete_queue() { $res = mysql_query("SELECT id, subject, payload FROM badminton_email ORDER BY id DESC"); $r = array(); while($row = mysql_fetch_assoc($res)) $r[$row['id']] = $row; return $r; } function delete_from_queue($id) { mysql_query(sprintf("DELETE FROM badminton_email WHERE id = '%d' LIMIT 1", $id)); } function authorize($username,$password) { $sql = sprintf(" SELECT username FROM badminton_admin WHERE username = '%s' AND password = md5('%s') LIMIT 1", mysql_real_escape_string($username), mysql_real_escape_string($password)); $res = mysql_query($sql) or die(mysql_error()); return ($res and mysql_fetch_array($res)); } }
14. september 2008 - 21:07
#16
Hvad om du retter: <? if($db) { $queue = $db->get_queue(); ?> til <? if(is_object($db)) { $queue = $db->get_queue(); ?>
14. september 2008 - 21:12
#17
Det virker umiddelbart, men hvordan får man delete funktionen til at vise alle de tilføjede udfor hvert deres punkt: <?php foreach($queue as $id => $n)?> <? { ?> </font> <li><form method="post" action="email.php"><font face="Verdana" size="1"> <font size="1"><input type="hidden" name="id" value="<?=$id?>" /> </font><?=htmlentities($n)?> <input type="submit" name="delete" value="Slet" style="border: 1px solid #000000; padding-left: 4px; padding-right: 4px; padding-top: 1px; padding-bottom: 1px; background-color: #FFFFFF" /></font></form> <font face="Verdana" size="1"> <? } ?>
14. september 2008 - 21:17
#18
hvorfor ikke lave det som et link og ikke som en form ?
14. september 2008 - 21:18
#19
Skal det ikke være en form hvis man skal kunne slette dem ? Hvordan kan det se ud som link?
14. september 2008 - 21:24
#20
Måske ala: <?php foreach($queue as $id => $n)?> <? { ?> </font> <li><font face="Verdana" size="1"><a href="email.php?slet=<?=$id;?>"><?=htmlentities($n)?></a> <? } ?> Dog er din html kode ufuldendt. Og du skal så rette email.php, så den modtager $id fra $_GET og ikke $_POST som nu.
14. september 2008 - 21:38
#21
Kan man ikke bare gøre så den ligger dem udfor hvert deres punkt ved en form?
14. september 2008 - 21:44
#22
Jo, så smid formen i top evt. Men er det ikke et nyt spørgsmål ? Og et svar.
27. september 2008 - 13:40
#23
fk87?
27. september 2008 - 14:52
#24
Takker for point.
Vi tilbyder markedets bedste kurser inden for webudvikling