I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Som jeg skriver i det andet spm. er fejlen i denne linie så vidt jeg er orinteret: <input type="hidden" name="ip" value="<?php $ip=$_SERVER['REMOTE_ADDR']; ?>">
Du siger at dine data bliver postet andre steder i databasen, end de bør. Så ja det gør det måske! (Medmindre jeg totalt har misforstået, selvfølgelig.. det skal jeg da ikke afvise)
Men din kode er helt gyldig - du kunne også skrive: <?=$ip = $_SERVER["REMOTE_ADDR"]; ?>
Sådan kan den se ud (beklager forrige fejl)! Når du kalder $ip efter at have sendt formen får du ip'en. Du kan selv teste med at smide den ind i et php dokument, uploade og vise source.
Men det er nu tosset at putte en IP ind i et felt på een side, og aflæse feltet på en anden side, når den anden side lige så godt kunne aflæse IP-en. Faktisk vil enhver hacker kunne indsætte en vilkårlig IP-adresse, og så er det jo ikke til nogen nytte ;)
Men er problemet ikke med indsættelsen i databasen - eller hvad?
neocron --> Lige prøvet ovenstående, og gav samme resultat. Stor forvirring i min MySQL Database... Ipén skal den ligge i den kolonne som hedder "ip". Lige pt. ligger den ipén i en anden kolonne.
erikjacobsen har egentlig ret i det han siger. Jeg er ikke nogen større ekspert i sikkerhed som sådan, men jeg bruger heller aldrig selv $_SERVER["REMOTE_ADDR"] hvor andre kan se den. Den ryger bare ind som et led i mysql-query'en uden at blive printet til brugeren.
Hmm så ved jeg godt nok ikke lige umiddelbart. Placeres de andre data NOGENLUNDE, som de skal, hvis vi lige tæller ip-rækken fra?
Nej, ikke rigtigt... Men min forbindelse til databasen er lukket der, da den er færdig, i min kode vil jeg ikke kunne gøre det da den kode skal connecte databasen
<?php include('inc.config.php'); $query = mysql_query("SELECT *,DATE_FORMAT(date,'%e/%c-%Y %T') AS date FROM news WHERE id=".$_GET['id'].""); $row = mysql_fetch_assoc($query);
$query = mysql_query("SELECT *,DATE_FORMAT(date,'%e/%c-%Y %T') AS date FROM comments WHERE parent=".$_GET['id']." ORDER BY id ASC"); if (mysql_num_rows($query) > 0) { echo '<a name="Kommentarer"></a><h2>Kommentarer</h2>'; while ($row = mysql_fetch_assoc($query)) { echo empty($row['email']) ? htmlspecialchars($row['name']) : '<a href="mailto:'.$row['email'].'">'.htmlspecialchars($row['name']).'</a>'; echo ' ('.$row['date'].')<br><br>'; echo nl2br(htmlspecialchars($row['text'])); echo '<div class="hr"></div>'; } } ?>
<a name="kommenter"></a><h2>Kommenter nyhed</h2>
Her kan du vælge at kommentere, ovenstående nyhed - sæt dine egne ord på og deltag i debatten.
<?php include('inc.config.php'); $query = mysql_query("SELECT *,DATE_FORMAT(date,'%e/%c-%Y %T') AS date FROM news WHERE id=".$_GET['id'].""); $row = mysql_fetch_assoc($query);
$query = mysql_query("SELECT *,DATE_FORMAT(date,'%e/%c-%Y %T') AS date FROM comments WHERE parent=".$_GET['id']." ORDER BY id ASC"); if (mysql_num_rows($query) > 0) { echo '<a name="Kommentarer"></a><h2>Kommentarer</h2>'; while ($row = mysql_fetch_assoc($query)) { echo empty($row['email']) ? htmlspecialchars($row['name']) : '<a href="mailto:'.$row['email'].'">'.htmlspecialchars($row['name']).'</a>'; echo ' ('.$row['date'].')<br><br>'; echo nl2br(htmlspecialchars($row['text'])); echo '<div class="hr"></div>'; } } ?>
<a name="kommenter"></a><h2>Kommenter nyhed</h2>
Her kan du vælge at kommentere, ovenstående nyhed - sæt dine egne ord på og deltag i debatten.
Nederst, skal den nu også hente brugerens IP og indsætte den i feltet ip. Med den gamle kode kom tingene ind det rigtige sted, men ikke når jeg får sat "ip" på ?
04/01-2005 23:41:12 I snakker om, hvor skal den indsættes i den nye kode så ?
erikjacobsen --> Du må meget undskylde mig, men er væk omkring det. Hvis der er en fejl der, hvorfor har det så virket før, uden <input type="hidden" name="ip" value="<?php $ip=$_SERVER['REMOTE_ADDR']; ?>">
Det du har nu, 00:35:50, uden navne på felter, er såmænd godt nok, når de nu står i den rigtige rækkefølge. Når det virker kan du jo sætte navne på felter ind, så det bliver mere læseligt.
Weee --> Tusind tak, kan se i min MySQL Admin at alt køre som det skal :D Smid et svar og du får smidt nogen point tilbage i nakken som tak for hjælpen og din tolmodighed med os php-begyndere :-P
Men det med IP-en som jeg skrev. Du skal nok ganske simpelt ændre det til:
mysql_query("INSERT INTO comments VALUES ('','".$_SERVER['REMOTE_ADDR']."','".$_POST['name']."','".$_POST['email']."',now(),'".$_POST['text']."','".$_POST['parent']."')") or die(mysql_error());
og fjerne dit hidden-felt i formen. Så kan du ikke hackes på lige den måde i hvert fald ;)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.