RickardMedlem sedan maj 2001287 inlägg Halloj..
jag skulle behöva en kodsnutt att stoppa in i min gästbok..
men jag kan bannemig inte komma på vad det kan vara.. e ju inte så bra på engelska så manualen sa mig NADA...
Nu är det så, att i textarean vill jag att man maximalt skall kunna skriva 512 tecken...
hur gör jag då?
Någon som vet??
Om det överstiger 512 tecken så skall det sluta att matas in tecken helt enkelt hur mycket mer man än försöker att skriva..
när jag ändå är igång och har det i tanken så kann jag ju bespara en tråd genom att skriva in nästa fråga också..
Jag vill även att alla fälten MÅSTE vara ifyllda för att man skall kunna skicka någonting allt...
det MÅSTE finnas ett namn och mailadressen Måste innehålla ett snabel a och MINST en punkt..
Hur skall jag göra då?
Jag bifogar gästboks koden för säker hets skull, den är inte så farligt lång:
<html>
<head>
<title>Gästbok</title>
</head>
<body bgcolor="#3A7A98" text="white" link="silver" alink="white" vlink="silver">
<?
if(isset($nytt)) {
matain();
}
$lank = mysql_pconnect ("localhost","user","password");
mysql_select_db ("nxgb");
$sql="SELECT * FROM gast ORDER BY datum DESC";
$result=mysql_query("$sql");
while($rad=mysql_fetch_array($result)) {
?>
<font face="bookman oldstyle"><b>
<div align="center">
<center>
<table border="0" width="580" height="*">
<tr>
<td width="125" height="87" bgcolor="#484848"><font color="#FFFFFF" size="2"><center><b>E-mail/namn:<br><a href="mailto:<?=$rad["mail"]?>"><?=$rad["namn"]?></a><br></center></td>
<td width="509" height="87" bgcolor="#2500F9"><font color="white" size="2"><b>Meddelande:<br><font color="silver"><?=$rad["inlagg"]?></font></td>
<td width="140" height="87" bgcolor="#484848"><font color="white" size="2"><center><b>Datum/tid:<br><font color="silver"><?=$rad["datum"]?></font><br><a href="login.php">Deleete</a></center></td>
</tr>
</table>
</center>
</b>
</div>
</font>
<?}
mysql_close ($lank);
?>
<CENTER>
<font face="bookman oldstyle" size="2" color="white">
<form method="post" action="index.php" name="matain" onSubmit="return skicka_OnClick();">
Namn:<br><input type="text" name="namn"><br>
Mail:<br><input type="text" name="mail"><br>
Meddelande:<br><textarea name="inlagg" rows="10" cols="50" wrap="HARD"></textarea><br>
<br><input type="submit" name="nytt" value="Skicka">
<input type="reset" value="Nää... allt blev fel =(">
<br>
</form>
<font>
</CENTER>
<?
function matain() {
global $namn, $inlagg, $mail;
$datum = date("Y-m-d H:i:s");
$lank = mysql_pconnect ("localhost","user","password");
$databas = mysql_select_db("nxgb");
$sql="INSERT INTO gast(namn,inlagg,mail,datum)
VALUES('$namn','$inlagg','$mail','$datum')";
mysql_query("$sql");
mysql_close ($lank);
}
?>
</body>
</html>
Sådär.. det var väll allt.. =)
R: Wf-smiley mitt i koden av misstag.
[Redigerat av Rickard den 20 okt 2001]
SPiNMedlem sedan mars 20007 896 inlägg Du kan inte göra det med PHP, alltså sluta mata in tecken i textarean. Det får du använda JS för. Här är en kodsnutt i PHP dock. Lägg till den i din matain-funktion;
if(strlen($inlagg) > 512)
echo "För många tecken i inlägget.";
if(!strstr($email, '@') || !(strstr($email, '.')))
echo "Felaktig e-mailadress.";
if($inlagg != "" && $namn != "" && $email != "")
// Mata in.
else
echo "Du måste fylla i alla fält.";
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
RickardMedlem sedan maj 2001287 inlägg tack spin...
jag har provat det, men jag vet inte VART jag skall lägga det...
Jag får parse error på else satsen...
har du (eller någon annan) lust att hjälpa mig med att berätta vart jag skall lägga den och hur jag rättar till parse error felet??
//Rickard
SPiNMedlem sedan mars 20007 896 inlägg Din funktion borde se ut så här, efter att ha lagt till koden:
function matain() {
global $namn, $inlagg, $mail;
$datum = date("Y-m-d H:i:s");
if(strlen($inlagg) > 512)
echo "För många tecken i inlägget.";
if(!strstr($email, '@') || !(strstr($email, '.')))
echo "Felaktig e-mailadress.";
if($inlagg != "" && $namn != "" && $email != "") {
$lank = mysql_pconnect ("localhost","user","password");
$databas = mysql_select_db("nxgb");
$sql="INSERT INTO gast(namn,inlagg,mail,datum) VALUES('$namn','$inlagg','$mail','$datum')";
mysql_query("$sql");
mysql_close ($lank);
}
else
echo "Du måste fylla i alla fält.";
}
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
[Redigerat av SPiN den 20 okt 2001]
RickardMedlem sedan maj 2001287 inlägg Tackar..
det funkar skitbra nu...
Bara en sakt till jag vill...
Jag vill att felmeddelandet hoppas upp i en liten javascript:alert popup ...
Hur skall jag få det?
Jag har den korrekta javascript koden, men koden bara lägger sig som vanlig text på sidan...
det jag har provat med är:
else
echo "Javascript:alert ('Du måste fylla i alla fält')";
och jag har även provat med:
else
echo "'Javascript:alert ('Du måste fylla i alla fält')'";
med samma resultat...
egentligen skall det avra en <a href=" framför Javascript...... men då blir det ju en länk av det hela.. och det vill jag ju inte heller...
Nån som vet?
SPiNMedlem sedan mars 20007 896 inlägg else {
echo "<script language=""JavaScript"" type=""text/javascript"">\n";
echo "alert('Du måste fylla i alla fält!');\n";
echo "</script>\n";
}
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
RickardMedlem sedan maj 2001287 inlägg Hmm... få upp ett fel med den där..
Parse error: parse error, expecting `','' or `';'' in /home/noratx/public_html/gastbok/index.php on line 71
Line 71 ser ut så här...
echo "<script language=""JavaScript"" type=""text/javascript"">\n";
Hela "avsnittet" ser ut så här:
<?
function matain() {
global $namn, $inlagg, $mail;
$datum = date("Y-m-d H:i:s");
if(strlen($inlagg) > 512)
echo "För många tecken i inlägget.";
if(!strstr($email, '@') || !(strstr($email, '.')))
echo "Fel mailadress";
if($inlagg != "" && $namn != "" && $email != "") {
$lank = mysql_connect ("localhost","user","password");
$databas = mysql_select_db("nxgb");
$sql="INSERT INTO gast(namn,inlagg,mail,datum)
VALUES('$namn','$inlagg','$mail','$datum')";
mysql_query("$sql");
mysql_close ($lank);
}
else {
echo "<script language=""JavaScript"" type=""text/javascript"">\n";
echo "alert('Du måste fylla i alla fält!');\n";
echo "</script>\n";
}
}
?>
R: Glömmde
[Redigerat av Rickard den 20 okt 2001]
SPiNMedlem sedan mars 20007 896 inlägg Oj! Sorry, tänkte ASP... :r
else {
echo "<script language=\"JavaScript\" type=\"text/javascript\">\n";
echo "alert('Du måste fylla i alla fält!');\n";
echo "</script>\n";
}
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
RickardMedlem sedan maj 2001287 inlägg Gör inget...
btw, du som (vad jag förstår) kan asp..
Hur får man asp att funka i linux? vet du det?
RickardMedlem sedan maj 2001287 inlägg hmm... upptäckte nu att jag får upp ett felmeddelande varesig jag skriver rätt mailadress eller inte...
RickardMedlem sedan maj 2001287 inlägg ingen annan som har någe bra förslag??
=)