• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

"wenn nicht ausgefüllt, dann nicht ausgeben" - gb-

Status
Für weitere Antworten geschlossen.

XraYSoLo

Senior HTML'ler
hallo,

einige von euch haben sicherlich schon inder hp-bewertung meine webseite gesehen (und vllt. auch beurteilt). da ist was neues drin, nämlich mein erstes gästebuch. jetzt ist da aber ein fataler fehler aufgetreten. ich habe zwei relevante dateien, die für eintrag und ausgabe sorgen:

-check_entry.php
-showbook.php

die erste datei wertet die abgesendeten formulardaten aus, die zweite für eine query aus, die die einzelnen einträge anzeigt. ich habe eine regel erstellt, die dafür sorgt, dass der eingegebene wert für eine internetseite (f_www) in einen "url-rohling" geschrieben werden soll. dummerweise wird aber auch dann ein link gepostet, wenn das feld leer ist oder mit einem auslassungszeichen wie "-" oder "/" versehen wurde. ich brauche also eine funktion, die folgendes ausführt:
"wenn wert gesetzt, als url darstellen, ansonsten nichts machen, keine url angeben".
leider weiß ich nur nicht, wie ich das angehen soll. hier sind die beiden dateien:

[php:1:4f11681c1f]
/* check_entry.php */
<?php

//Config und Verbindung holen
include("mysql/config.inc.php");
include("mysql/connect.inc.php");

//Variablendeklarierung zur Steuerung der Eintragsfunktion
$f_name = $_POST["f_name"];
$f_mail = $_POST["f_mail"];
$f_www = $_POST["f_www"];
$f_icq = $_POST["f_icq"];
$f_msn = $_POST["f_msn"];
$f_message = $_POST["f_message"];

//
$entry_ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
$entry_date = date("d.m.Y");
$entry_time = date("H:i");

//Eintrags-SQL
$sql = "INSERT INTO xray_book VALUES ('','$f_name','$f_mail','$f_www','$f_icq','$f_msn','$f_message', '$entry_date', '$entry_ip', '$entry_time', '1')";

//Felder checken und eintragen
echo '<div align="center">';
echo 'Diese Seite nicht aktualisieren

';
if(empty($f_name) || empty($f_mail) || empty($f_message))
{
echo '<span class="book_error">Nicht alle relevanten Felder wurden ausgefüllt, bitte korrigieren</span>';
}
else
{
mysql_db_query("$db_name", "$sql");
echo '<span class="book_succeed">Deine Eintrag wurde erfolgreich gesendet
';
echo 'Wenn er freigeschaltet wurde, kannst du ihn nun hier ansehen</span>';
}
echo '</div>';

//Verbindung trennen
mysql_close();
?>
[/php:1:4f11681c1f]

und

[php:1:4f11681c1f]
<?php
/* showbook.php */

include("mysql/config.inc.php");
include("mysql/connect.inc.php");

$db_select = @mysql_select_db($db_name, $conn);

$result = @mysql_query("SELECT * FROM `xray_book` WHERE `lock`='0' ORDER BY ID DESC") or die ("Process was killed");

while($row = mysql_fetch_array($result)) {

echo '<table width="510" border="0" align="center">';
echo '<tr>';
echo ' <td width="122" align="left" valign="top" class="table_bg">Eintrag-Nr: '.$row[ID].'</td>';
echo ' <td width="105" align="left" valign="top" class="table_bg">'.$row[f_name].'</td>';
echo ' <td width="139" align="left" valign="top" class="table_bg">vom '.$row[entry_datum].'</td>';
echo ' <td width="126" align="left" valign="top" class="table_bg">um '.$row[entry_zeit].' Uhr </td>';
echo ' </tr>';
echo ' <tr>';
echo ' <td valign="top" align="left" class="table_bg">';
echo ' &raquo; Mail schreiben
';
echo ' &raquo; HP ansehen
';
echo ' &raquo; '.$row[f_icq].'
';
echo ' &raquo; MSN</td>';
echo ' <td colspan="3" valign="top" align="left" class="table_bg">'.$row[f_message].'</td>';
echo ' </tr>';
echo '</table>';
echo '

';
}
?>
[/php:1:4f11681c1f]

Nils aka XraYSoLo
 
Werbung:
Werbung:
einfach mit if auf empty abfragen wo ist denn da das problem? oder liegt das problem bei der tabelle ?

schreib doch einfach N/A hin wenn keine angegeben wurde...
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben