Åtgärder

CS enkelt prov rätta: Skillnad mellan sidversioner

Från Skolbok

mIngen redigeringssammanfattning
Ingen redigeringssammanfattning
Rad 12: Rad 12:




<?php
  <?php
  session_start();//Behåll inloggningsbiljetten
  session_start();//Behåll inloggningsbiljetten
  //Filnamn  RaettaSimpeltProv.php
  //Filnamn  simpeltprov_raetta.php
   
   
  //Olika viktiga variabler
  //Olika viktiga variabler
Rad 24: Rad 24:
  // Anslut till MySQL servern och välj rätt tabell
  // Anslut till MySQL servern och välj rätt tabell
  mysql_connect("$host", "$username", "$password")or die("Kan inte ansluta till databasen");
  mysql_connect("$host", "$username", "$password")or die("Kan inte ansluta till databasen");
  mysql_select_db("$db_name")or die("Kan inte välja datatabellen");
  mysql_select_db("$db_name")or die("Kan inte välja rätt databas.");
   
   
  //Har vi fått in ett prov id?
  //Har vi fått in ett prov id?
   if($_POST['formSubmit'] == "OK")
   if($_POST['formSubmit']== "Spara" || $_POST['formSubmit']== "OK" )
  {
  {
  $provid = $_POST['provid'];
  $provid = $_POST['provid'];
Rad 33: Rad 33:
  else
  else
  {
  {
  $provid=0;
  $provid = 0;
  }
  }
   
   
Rad 43: Rad 43:
  $provkommentar=$_POST['provkommentar'];
  $provkommentar=$_POST['provkommentar'];
  $resultat=$_POST['resultat'];
  $resultat=$_POST['resultat'];
  $inskickat = 'true';
   
  }
  //Uppdatera databasen
Else
  if ($provid > 0)
{
  {
$valtprov=0;
  $datumraettat=date('Y-m-d H:i:s');
$elev_id=0;
  $sqlupp = "UPDATE simpeltprov set ELEV_ID=".$elev_id.", PROVKOMMENTAR='".$provkommentar."', RESULTAT='".$resultat."', DATUM_RATTAT='".$datumraettat."' where ID = ".$provid;
$provkommentar=’’;
  mysql_query($sqlupp) or die(mysql_error());
$resultat=’’;
$inskickat = 'false';
  }
  }
  }
   
   
  $elev_fnamn = ’’;
   
$elev_enamn = ’’;
$elev_klass = ’’;
$elev_hemligt = ’’;
$provnamn=’’;
$facit=’’;
$elevsvar=’’;
$datumgjort=’’;
$datumraettat=date('Y-m-d H:i:s');
$prov_id=1;
  //Ta fram informationen från databasen
  //Ta fram informationen från databasen
  $result = mysql_query("SELECT * FROM simpeltprov where prov_id = ".$prov_id);
  $sqlres = "SELECT * FROM simpeltprov where id = ".$provid;
   
  $result = mysql_query ($sqlres) or die(mysql_error());
  while($row = mysql_fetch_array($result))
  while($row = mysql_fetch_array($result))
   {
   {
  $prov_id=$row['ID'];;
  $elev_id = $row['ELEV_ID'];
  $elev_fnamn  = $row['F_NAMN'];
  $elev_fnamn  = $row['F_NAMN'];
  $elev_enamn = $row['E_NAMN'];
  $elev_enamn = $row['E_NAMN'];
Rad 77: Rad 68:
  $facit=$row['FACIT'];
  $facit=$row['FACIT'];
  $elevsvar=$row['ELEVSVAR'];
  $elevsvar=$row['ELEVSVAR'];
  $datumgjort=$row['DATUMGJORT'];
$provkommentar=$row['PROVKOMMENTAR'];
$resultat=$row['RESULTAT'];
  $datumgjort=$row['DATUM_GJORT'];
$datumrattat=$row['DATUM_RATTAT'];
   }
   }
   
   
  ?>
  ?>
Rad 89: Rad 84:
   
   
  <body>
  <body>
  <form>
  <form name="formraetta" method="post" action="simpeltprov_raetta.php">
   
   
  <?php
  &lt;?php
  //vi behöver ett sätt att välja ut ett prov att rätta på
  //vi behöver ett sätt att välja ut ett prov att rätta på
  $querylistbox="SELECT name,id FROM simpleprov";
  //Men vi måste bibehålla det valda provets id-nummer
echo "&lt;select name=provid&gt;";
if ($provid==0){
echo "&lt;option value=0&gt;Välj prov&lt;/option&gt;";
}
else
{
echo "&lt;option value=".$provid."&gt;Prov valt, id:".$provid."&lt;/option&gt;";
}
   
   
  $result = mysql_query ($querylistbox);
$querylistbox="SELECT * FROM simpeltprov ORDER BY PROVNAMN, KLASS, E_NAMN";
echo "&lt;select name=valtprov value=''&gt;Provnamn&lt;/option&gt;";
  $result = mysql_query ($querylistbox) or die(mysql_error());
// Skriv ut varje sparat prov
   
   
  while($nt=mysql_fetch_array($result)){//tabellraden sparas i $nt
  while($row=mysql_fetch_array($result))
  echo "&lt;option value=$nt[ID]&gt;$nt[PROVNAMN]&lt;/option&gt;";
{//tabellraden sparas i $row
  /* Genom att stega ner genom tabellen visas ala proven upp */
  echo "&lt;option value=".$row['ID']."&gt;".$row['PROVNAMN']."-".$row['E_NAMN']." ".$row['F_NAMN']."-".$row['KLASS'].":".$row['DATUM_GJORT']."/".$row['DATUM_RATTAT']."&lt;/option&gt;";
  // Genom att stega ner genom tabellen visas alla proven upp  
  }
  }
  echo "&lt;/select&gt;";// Avsluta boxen
  echo "&lt;/select&gt;";// Avsluta boxen
?>
   
   
?&gt;
&lt;input type="submit" name="formSubmit" value="OK" /&gt;&lt;br&gt;
&lt;br&gt;
  &lt;b&gt;Elev ID-nummer&lt;/b&gt;&lt;br&gt;
  &lt;b&gt;Elev ID-nummer&lt;/b&gt;&lt;br&gt;
  &lt;input name="elev_id" type="text" id="elev_id" value= &lt;?=$elevid;?&gt;&gt;&lt;br&gt;
  &lt;input name="elev_id" type="text" value= &lt;?=$elev_id;?&gt;&gt;&lt;br&gt;
  &lt;i&gt;Ändra bara om du vet elevens ID.&lt;/i&gt;&lt;br&gt;
  &lt;i&gt;Ändra bara om du vet elevens ID.&lt;/i&gt;&lt;br&gt;
   
  &lt;br&gt;
  &lt;b&gt;Provkommentar&lt;b&gt;&lt;br&gt;
&lt;b&gt;Prov:&lt;/b&gt;&lt;?=$provnamn;?&gt;&lt;br&gt;
&lt;b&gt;Elev:&lt;/b&gt;&lt;?=$elev_fnamn;?&gt; &lt;?=$elev_enamn;?&gt; &lt;b&gt;Klass:&lt;/b&gt;&lt;?=$elev_klass;?&gt;&lt;br&gt;
&nbsp;&nbsp;&lt;b&gt;(Hemligt ord:&lt;/b&gt;&lt;?=$elev_hemligt;?&gt;)&lt;br&gt;
&lt;b&gt;Inlämnat:&lt;/b&gt;&lt;?=$datumgjort;?&gt;&lt;br&gt;&lt;b&gt;Rättat:&lt;/b&gt;&lt;?=$datumrattat;?&gt;&lt;br&gt;
&lt;hr&gt;
  &lt;b&gt;Provkommentar:&lt;/b&gt;&lt;br&gt;
  &lt;textarea name="provkommentar" rows="10" cols="76"&gt;&lt;?=$provkommentar;?&gt; &lt;/textarea&gt;&lt;br&gt;
  &lt;textarea name="provkommentar" rows="10" cols="76"&gt;&lt;?=$provkommentar;?&gt; &lt;/textarea&gt;&lt;br&gt;
   
   
  &lt;b&gt;Resultat&lt;/b&gt;&lt;br&gt;
  &lt;b&gt;Resultat&lt;/b&gt;&lt;br&gt;
  &lt;input name="resultat" type="text" id="resultat" value= &lt;?=$resultat;?&gt;&gt;&lt;br&gt;
  &lt;input name="resultat" type="text" value= &lt;?=$resultat;?&gt;&gt;&lt;br&gt;
&lt;input type="hidden" name="inskickat" value="&lt;?=$inskickat;?&gt;" &gt;
   
   
  &lt;br&gt;
  &lt;br&gt;
  &lt;input type="submit" name="formSubmit" value="Spara" /&gt;
  &lt;input type="submit" name="formSubmit" value="Spara" /&gt;
&lt;table&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;b&gt;Elevsvar:&lt;/b&gt;&lt;br&gt;
&lt;?=nl2br($elevsvar);?&gt;
&lt;/td&gt;&lt;td valign="top"&gt;
&lt;b&gt;Facit:&lt;/b&gt;&lt;br&gt;
&lt;?=nl2br($facit);?&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
  &lt;/form&gt;
  &lt;/form&gt;
   
   
  &lt;/body&gt;
  &lt;/body&gt;
  &lt;/html&gt;
  &lt;/html&gt;
 
 
[[Kategori: Privat]]
[[Kategori: Privat]]

Versionen från 13 juni 2012 kl. 12.53

Nu har du sett hur man gör ett simpelt prov, nu är det dags att kunna rätta det också. Då får vi sätta upp likadana kontroller:

De fält som behöver kunna redigeras och uppdateras är:

ELEV_ID 
PROVKOMMENTAR
RESULTAT

Alla andra uppgifter i provet skall bara visas upp på sidan, vilket gör att det går hyfsat fort att rätta provet.

Det första vi måste göra är att välja rätt prov. Det sker i det här fallet med en flervalsruta. Det finns säkert bättre sätt att göra det på, men knappast enklare.

Nackdelen med detta är att om du har mängder med prov inlagda i databasen får du hundratals poster att visa upp och valen går långt under skärmkanten. Då får du begränsa sökningen ändå mer (jag skall visa hur det går till, oroa dig inte).


 <?php
session_start();//Behåll inloggningsbiljetten
//Filnamn  simpeltprov_raetta.php

//Olika viktiga variabler
$host="localhost"; // Host , på en privat dator duger oftast localhost
$username="root"; // Mysql användarnamn, antagligen root
$password="password1"; // Lösenord till root, kan t.ex. vara password1
$db_name="skolan"; // Databasens namn

// Anslut till MySQL servern och välj rätt tabell
mysql_connect("$host", "$username", "$password")or die("Kan inte ansluta till databasen");
mysql_select_db("$db_name")or die("Kan inte välja rätt databas.");

//Har vi fått in ett prov id?
 if($_POST['formSubmit']== "Spara" || $_POST['formSubmit']== "OK" )
{
$provid = $_POST['provid'];
}
else
{
$provid = 0;
}

//Har man tryckt på knappen?
if($_POST['formSubmit'] == "Spara")
{
$valtprov = $_POST['valtprov'];
$elev_id=$_POST['elev_id'];
$provkommentar=$_POST['provkommentar'];
$resultat=$_POST['resultat'];

//Uppdatera databasen
  if ($provid > 0)
  {
  $datumraettat=date('Y-m-d H:i:s');
  $sqlupp = "UPDATE simpeltprov set ELEV_ID=".$elev_id.", PROVKOMMENTAR='".$provkommentar."', RESULTAT='".$resultat."', DATUM_RATTAT='".$datumraettat."' where ID = ".$provid;
  mysql_query($sqlupp) or die(mysql_error());

  }
}


//Ta fram informationen från databasen
$sqlres = "SELECT * FROM simpeltprov where id = ".$provid;
$result = mysql_query ($sqlres) or die(mysql_error());
while($row = mysql_fetch_array($result))
 {
$elev_id = $row['ELEV_ID'];
$elev_fnamn  = $row['F_NAMN'];
$elev_enamn = $row['E_NAMN'];
$elev_klass = $row['KLASS'];
$elev_hemligt = $row['HEMLIGTORD'];
$provnamn=$row['PROVNAMN'];
$facit=$row['FACIT'];
$elevsvar=$row['ELEVSVAR'];
$provkommentar=$row['PROVKOMMENTAR'];
$resultat=$row['RESULTAT'];
$datumgjort=$row['DATUM_GJORT'];
$datumrattat=$row['DATUM_RATTAT'];
 }


?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="sv-SE">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Rättning av enkelt prov </title>
</head>

<body>
<form name="formraetta" method="post" action="simpeltprov_raetta.php">

<?php
//vi behöver ett sätt att välja ut ett prov att rätta på
//Men vi måste bibehålla det valda provets id-nummer
echo "<select name=provid>";
if ($provid==0){
echo "<option value=0>Välj prov</option>";
}
else
{
echo "<option value=".$provid.">Prov valt, id:".$provid."</option>";
}

$querylistbox="SELECT * FROM simpeltprov ORDER BY PROVNAMN, KLASS, E_NAMN";
$result = mysql_query ($querylistbox) or die(mysql_error());

while($row=mysql_fetch_array($result))
{//tabellraden sparas i $row
echo "<option value=".$row['ID'].">".$row['PROVNAMN']."-".$row['E_NAMN']." ".$row['F_NAMN']."-".$row['KLASS'].":".$row['DATUM_GJORT']."/".$row['DATUM_RATTAT']."</option>";
// Genom att stega ner genom tabellen visas alla proven upp 
}
echo "</select>";// Avsluta boxen

?>
<input type="submit" name="formSubmit" value="OK" /><br>
<br>
<b>Elev ID-nummer</b><br>
<input name="elev_id" type="text" value= <?=$elev_id;?>><br>
<i>Ändra bara om du vet elevens ID.</i><br>
<br>
<b>Prov:</b><?=$provnamn;?><br>
<b>Elev:</b><?=$elev_fnamn;?> <?=$elev_enamn;?> <b>Klass:</b><?=$elev_klass;?><br>
  <b>(Hemligt ord:</b><?=$elev_hemligt;?>)<br>
<b>Inlämnat:</b><?=$datumgjort;?><br><b>Rättat:</b><?=$datumrattat;?><br>
<hr>
<b>Provkommentar:</b><br>
<textarea name="provkommentar" rows="10" cols="76"><?=$provkommentar;?> </textarea><br>

<b>Resultat</b><br>
<input name="resultat" type="text" value= <?=$resultat;?>><br>

<br>
<input type="submit" name="formSubmit" value="Spara" />
<table>
<tr>
<td valign="top">
<b>Elevsvar:</b><br>
<?=nl2br($elevsvar);?>
</td><td valign="top">
<b>Facit:</b><br>
<?=nl2br($facit);?>
</td>
</tr>
</table>

</form>

</body>
</html>