I dette særtema om aspekter af AI ser vi på skiftet fra sprogmodeller til AI-agenter, og hvordan virksomheder kan navigere i spændet mellem teknologisk hastighed og behovet for menneskelig kontrol.
Det du kan gøre er følgende: Efter du har kaldt: mysql_query("INSERT INTO TABLE VALUES(.........)"); så kalder du: header('Location: SIDENS_NAVN.php'); exit();
Jeg forstår slet ikke hvordan det kan lade sig gøre, da jeg rent faktisk har lavet nogle if/elseif, som gør der ikke kan postes "blankt"(sammen med trim og str-replace for ).
Er det fordi det køre i en frame på en side? For jeg har et tidligt eks. hvor de virkede fint og hvor man ikke kunne f5'en. Men det kørte ikke i frame?
if (empty($first)) { $first = FALSE; echo 'Du har glemt at indtaste dit navn !'; } elseif (empty($alder)) { $alder = FALSE; echo 'Du har glemt at indtaste din alder !'; } elseif (empty($kommentar)) { $kommentar = FALSE; echo 'Du har glemt at indtaste en kommentar !'; } else { mysql_connect("","","") or die(mysql_error()); mysql_select_db("") or die(mysql_error());
Det eneste rigtige er at gøre som jakobdo siger, du får måske en header fejl, men så må du flytte din kode til indsættelse i databasen op før headers bliver sat. Så bliver næste problem, at dine fejl beskeder så ikke vil stå det rigtige sted på siden. Men det gøres sådan:
//Toppen af din side $messages=array(); global $messages;
if (empty($first)) { $first = FALSE; $messages = 'Du har glemt at indtaste dit navn !'; } if (empty($alder)) { $alder = FALSE; $messages = 'Du har glemt at indtaste din alder !'; } if (empty($messages)){ indsæt i db
}
//Fejl funktionen, den kan indsættes hvor du lyster:
function visFejl($messages) { print("<b>Følgende fejlmeddelser fundet:</b>\n<ul>\n");
foreach($messages as $msg){ print("<li>$msg</li>\n"); } print("</ul>\n"); }
//Så skal du ha vist fejbeskederne: if(!empty($messages)){ visFejl($messages); }
17196: Oki det er bare i orden. Nu skal jeg bare lige være helt sikkert, sådan som du ligger det ud placere du formen og "print indhold" sammen og så skriver du i databasen i en seperat php fil (for så at linke tilbage til formen igen?) korrekt?
Jamen det bestemmer du selv. Det kan også sagtens stå i samme fil. Men for at have bedre overblik, kan du flytte din funktion til en anden fil. Og så bare inkludere den i dine sider:
include_once 'funktioner.php';
Som så indeholder din visFejl funktion:
function visFejl($messages) { print("<b>Følgende fejlmeddelser fundet:</b>\n<ul>\n");
foreach($messages as $msg) { print("<li>$msg</li>\n"); } print("</ul>\n"); } ?>
Så kan du kalde funktionen hvor du vil, som det også står tidligere:
if (empty($firstn)) { $firstn = FALSE; $messages[] = 'Du har glemt at indtaste dit navn !'; }
if (empty($alder)) { $alder = FALSE; $messages[] = 'Du har glemt at indtaste din alder !'; }
if (empty($kommentar)) { $kommentar = FALSE; $messages[] = 'Du har glemt at indtaste din kommentar !'; }
if (empty($messages)) { mysql_connect("","","") or die(mysql_error()); mysql_select_db("") or die(mysql_error()); mysql_query("INSERT INTO tagwall(svarID, firstn, alder, kommentar) values(0, '$firstn','$alder','$kommentar')"); header('Location: risros.php'); } if(!empty($messages)) { visFejl($messages); } function visFejl($messages) { print("<b>Følgende fejlmeddelser fundet:</b>\n<ul>\n");
foreach($messages as $msg) { print("<li>$msg</li>\n"); } print("</ul>\n"); }
?>
Jeg har prøvet at ændre,
if (empty($first)) {
til
if (empty($_POST[first]))
Men uden held, derfor er der ikke i koden endnu.
Men problemet er som sagt at når taggen loades, så banker den frem med at man ikke har udfyldt noget, hvilket jo er logisk? Men det ser ikke så fiks ud?
Forresten, mange tak fordi du bruger tid på det! {
// Her skal du have en if sætning der ser på om der er postet, så derfor ser vi om mode er lig add. Så husk det skal passe med din form action if($_GET[mode] == "add"){ if (empty($_POST[firstn])){ $messages[] = 'Du har glemt at indtaste dit navn !'; }
if (empty($_POST[alder])){ $messages[] = 'Du har glemt at indtaste din alder !'; }
if (empty($_POST[kommentar])){ $messages[] = 'Du har glemt at indtaste din kommentar !'; }
17196: Hvor meget skal der til for at gemme det brugeren har skrevet i felterne, hvis de f.eks udfylder formularen og har skrevet sygt meget i kommentar, men mangler alder...så sletter den jo alt? :o(
Hmm, enten vil en radio value være tom eller have en værdi. Hvis det så skal være muligt ikke at checke den, så skal du selvfølgelig ikke lave en if (empty($_POST[radio])){
så skal du bare have værdien så du kan indsætte den i databasen:
Jeg har et mindre spørgeskema; spørgsmål1 -radioknap1 -radioknap2 -radioknap3
spørgsmål1 -radioknap1 -radioknap2 -radioknap3
i begge spørgsmål skal der vælge en radioknap. men det skal være sådan så, hvis personen kun vælger den første, og klikker "send". Så kommer der fejlbesked og så husker valget.
Alt det andet er sådan ste lavet med fejlbeskeder osv. jeg kan ikke ikke finde ud af det med at huske radioknappen, det var lidt nemmere når man kunne give value i et textarea/textbox...hehe
Den kan så lige så godt se sådan ud, mit mar bare et eksempel:
if($_POST[koen] == 'pony'){ echo '<input name="koen" type="radio" id="radio" value="pony" checked="checked">'; }else{ echo '<input name="koen" type="radio" id="radio" value="pony">'; } det skal du så indsætte istedet for hver af dine radio knapper, og så huske at ændre value og $_POST[koen] == 'value'
Jeg er totalt blank nu, det hele køre rundt i knolden, så tror bare lige jeg holder her, for ellers så mister du også tålmodigheden om lidt..haha
Kender du evt et færdigt eksempel jeg kan studere, for jeg kan slet ikke se det for mig
Shit, jeg troede næsten den formular var færdig, og så vil man bare have en feature som gemmer dem man har klikket af og beder om at udfylde de resterende...haha...ja man bliver sq tit klogere ;o)
Ok, det fungerede bare perfekt. Man kan du svare mig på hvordan hvor bla taggen ikke viser æåø korrekt? nogle gange virker det, andre gange laver den besynderligetegn?
Nå, jeg løste det med en header med timeout og så echo''
Synes godt om
Ny brugerNybegynder
Din løsning...
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.