function raizes($a, $b, $c) { $r = array(); $d = delta($a, $b, $c); // Somente uma raiz real if ($d == 0) { $x = -$b / (2 * $a); $r[] = $x; } // Duas raizes reais if ($d > 0) { $x1 = (-$b - sqrt($d)) / (2 * $a); $x2 = (-$b + sqrt($d)) / (2 * $a); $r[] = $x1; $r[] = $x2; } return $r; }
function updateShoutbox() { $sql = initDB(); //$sql->beginTransaction(); try { $query = $sql->prepare('SELECT shoutbox.*, a.login AS login, b.login AS whisp FROM shoutbox, users a, users b WHERE shoutbox.user = a.id AND shoutbox.dest = b.id AND (shoutbox.user = :me OR shoutbox.dest = :me);'); $query->execute(array('me' => $_SESSION['id'])); $whisps = $query->fetchAll(); $results = array(); foreach ($whisps as $whisp) { array_push($results, $whisp); } $query = $sql->prepare('SELECT shoutbox.*, users.login, \'Guilde\' AS whisp FROM shoutbox, users WHERE shoutbox.dest = 0 AND users.id = shoutbox.user;'); $query->execute(); $guilds = $query->fetchAll(); foreach ($guilds as $guild) { array_push($results, $guild); } sort($results); $return = '<div>'; $last_user = ''; $last_post_date = ''; $last_class = ''; foreach ($results as $result) { if ($result['dest'] == $_SESSION['id'] || $result['dest'] != 0 && $result['user'] == $_SESSION['id']) { $class = ' class="whisp"'; if ($result['dest'] == $_SESSION['id']) { $fromTo = 'De '; } else { $fromTo = 'à '; } } else { $class = ' class="guild"'; $fromTo = ''; } if ($last_user != $result['user'] || delta(15, $last_post_date, $result['post_date']) || $last_class != $class) { if ($_SESSION['id'] == $result['user']) { if ($result['dest'] != 0) { $a = '<a href="#" title="Chuchoter à ' . $result['whisp'] . '" onclick="whisper(' . $result['dest'] . ')">[' . $result['whisp'] . ']</a>'; } else { $a = $result['login']; } } else { if ($result['dest'] == 0) { if ($_SESSION['id'] == $result['user']) { $a = $result['login']; } else { $a = '<a href="#" title="Chuchoter à ' . $result['login'] . '" onclick="whisper(' . $result['user'] . ')">[' . $result['login'] . ']</a>'; } } else { $a = '<a href="#" title="Chuchoter à ' . $result['login'] . '" onclick="whisper(' . $result['user'] . ')">[' . $result['login'] . ']</a>'; } } $return .= '</div><div class="new_message"><p ' . $class . '>' . $fromTo . $a . ' : ' . $result['message'] . '</p>'; $last_user = $result['user']; $last_post_date = $result['post_date']; $last_class = $class; } else { $return .= '<p ' . $class . '>' . $result['message'] . '</p>'; } } $return .= '</div><div id="last-message"></div>'; echo utf8_encode($return); } catch (Exception $e) { //$sql->rollBack(); echo $e->getMessage() . '<br />' . $e->getLine(); } }