Как изменить таблицу назначения оператора вставки SQL? - PullRequest
2 голосов
/ 20 декабря 2008

Как бы вы написали SQL-оператор, который позволяет вставлять данные, полученные из формы, но будут вводиться в одну или другую таблицу в зависимости от того, что выбрано в форме? Я знаю, как вставить данные из формы в указанную таблицу, но мне нужно иметь возможность использовать форму для выбора таблицы, в которую будут вводиться данные. Вот копия моей формы ...

print("<form action="<?=$PHP_SELF?>" enctype="multipart/form-data" method="post">
  <fieldset>
  <legend>Upload Your Motions and Orders Here</legend>
  <table width="80%" border="0">
    <tr>
      <td class="label"> <label for="label">Select Your File:</label>    
    </p></td>
      <td class="input"><input type="hidden" name="MAX_FILE_SIZE" value="30000" />
      <input type="file" name="thefile" value="<? echo $thefile; ?>" accesskey="s" tabindex="10"></td>
    </tr>
    <tr>
      <td class="label"><span class="input">
        <label for="label">Type of File:</label>
      </span></td>
      <td class="input"><select name="field" id="field" value="<? echo $field; ?>" accesskey="t" tabindex="20">
        <option value="Motions">Motions</option>
        <option value="Orders">Orders</option>
        </select>      </td>
    </tr>
    <tr>
      <td class="label"><label for="label">Name of File:</label> </td>
      <td class="input"><label for="type"></label>
      <input type="text" name="name" id="name" value="<? echo $name; ?>" accesskey="n" tabindex="30"></td>
    </tr>
    <tr>
      <td class="label"><label for="label">Date Filed In Court:</label> </td>
      <td class="input"><label for="date"></label>
      <input type="text" name="date" id="date" value="<? echo $date; ?>" accesskey="f" tabindex="40"></td>
    </tr>
    <tr>
      <td class="label"><span class="input">
        <label for="label">Description:</label>
      </span></td>
      <td class="input"><textarea name="description" id="description" cols="30" rows="5" value="<? echo $description; ?>" accesskey="d" tabindex="50"></textarea></td>
    </tr>
    <tr>
      <td class="label">&nbsp;</td>
      <td class="input"><input type="submit" name="submit" value="Upload This File" /></td>
    </tr>
  </table>
  </fieldset>
</form>");`
<form action="<?=$PHP_SELF?>" enctype="multipart/form-data" method="post">
  <fieldset>
  <legend>Upload Your Motions and Orders Here</legend>
  <table width="80%" border="0">
    <tr>
      <td class="label"> <label for="label">Select Your File:</label>    
    </p></td>
      <td class="input"><input type="hidden" name="MAX_FILE_SIZE" value="30000" />
      <input type="file" name="thefile" value="<? echo $thefile; ?>" accesskey="s" tabindex="10"></td>
    </tr>
    <tr>
      <td class="label"><span class="input">
        <label for="label">Type of File:</label>
      </span></td>
      <td class="input"><select name="field" id="field" value="<? echo $field; ?>" accesskey="t" tabindex="20">
        <option value="Motions">Motions</option>
        <option value="Orders">Orders</option>
        </select>      </td>
    </tr>
    <tr>
      <td class="label"><label for="label">Name of File:</label> </td>
      <td class="input"><label for="type"></label>
      <input type="text" name="name" id="name" value="<? echo $name; ?>" accesskey="n" tabindex="30"></td>
    </tr>
    <tr>
      <td class="label"><label for="label">Date Filed In Court:</label> </td>
      <td class="input"><label for="date"></label>
      <input type="text" name="date" id="date" value="<? echo $date; ?>" accesskey="f" tabindex="40"></td>
    </tr>
    <tr>
      <td class="label"><span class="input">
        <label for="label">Description:</label>
      </span></td>
      <td class="input"><textarea name="description" id="description" cols="30" rows="5" value="<? echo $description; ?>" accesskey="d" tabindex="50"></textarea></td>
    </tr>
    <tr>
      <td class="label">&nbsp;</td>
      <td class="input"><input type="submit" name="submit" value="Upload This File" /></td>
    </tr>
  </table>
  </fieldset>
</form>

Тип поля выбора файла будет тем, что определяет таблицу, в которую будут вставлены данные.

1 Ответ

1 голос
/ 20 декабря 2008

Я бы держался подальше от запуска динамического sql. Поскольку у вас есть список известных типов, вы можете поместить логику для выбора таблицы в инструкцию case на уровне приложения на основе типа файла. Другой вариант - создать хранимую процедуру с оператором case или набором операторов if. Таким образом, вы не создаете динамический sql для вставки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...